2016-04-27 13 views
-2

i ein Add tue gut.Aber cart.everything wird, wenn ich die Daten aus der Sitzung 2d-Array in der Datenbank zu speichern versuche es nicht richtig, dh das geschieht Die ID und die Menge des letzten Produkts werden nur gespeichert.kaufen button-PHP-Programm in den Warenkorb

dies ist die Seite, die die Daten in der Datenbank zu speichern, verwendet wird

<?php 
session_start(); 
echo "<pre>"; 
$value=$_SESSION['cart']; 
foreach ($_SESSION['cart'] as $item) { 
    // echo 'p_id: ', $item['id'], '<br />'; 
    // echo 'p_size: ', $item['p_size'], '<br />'; 
    //echo 'p_qty: ', $item['qty'], '<br /><br />'; 
} 
//print_r($value); 
echo"done"; 
echo $address=$_GET['add']; 
echo "<br>"; 
echo $con=$_GET['cont']; 
echo "<br>"; 
echo $mail=$_GET['mail']; 
echo "<br>"; 
echo $pay=$_GET['mode']; 
echo "<br>"; 
echo $total=$_GET['total']; 
echo "<br>"; 

//echo "".$_SESSION['cart']; 
//echo $total=$_SESSION['id']; 
//echo $total=$_GET['total']; 
$servername = "localhost"; 
$username = "root"; 
$password = "root"; 
$dbname = "admin1"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 
echo "connected successfully"; 
echo"<br>"; 

foreach ($_SESSION['cart'] as $value){ 
    // print_r($_SESSION); 
//print_r($_SESSION['cart']); 
    $sql="INSERT INTO orders(total,id,qty,address,cont,mail,mode) values ('".$total."','".$value['id']."','".$value['qty']."','".$address."','".$con."','".$mail."','".$pay."')"; 

} 
if ($conn->query($sql) === TRUE) { 
    echo "New record created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 
?> 
+0

Bitte geben Sie die Datenbankstruktur und Artikelstruktur. –

+0

@abhi haben Sie Werte in Session gespeichert? Ich meine, versuchen 'print_r ($ _ SESSION)' und überprüfen, was Sie – Nehal

+0

bekommen „***, wenn ich die Daten aus der Sitzung 2d-Array in der Datenbank zu speichern versuche es nicht richtig geschieht ***“ Was für Fehler haben Sie bekommen ? Wenn Sie eine Frage zu einem Fehler stellen, *** IMMER ***, geben Sie das Fehlerprotokoll ein. Um Fehlermeldungen zu Ihrem PHP-Code zu ermöglichen, fügen Sie 'error_reporting (E_ALL); ini_set ('display_errors', '1'); 'kommt am Anfang des Skripts zurück? –

Antwort

1

Sie hinzufügen sollten $ conn-> query ($ sql) in foreach-Schleife. Versuchen Sie es:

<?php 
    session_start(); 
    echo "<pre>"; 
    $value=$_SESSION['cart']; 
    foreach ($_SESSION['cart'] as $item) { 
     // echo 'p_id: ', $item['id'], '<br />'; 
     // echo 'p_size: ', $item['p_size'], '<br />'; 
     //echo 'p_qty: ', $item['qty'], '<br /><br />'; 
    } 
    //print_r($value); 
    echo"done"; 
    echo $address=$_GET['add']; 
    echo "<br>"; 
    echo $con=$_GET['cont']; 
    echo "<br>"; 
    echo $mail=$_GET['mail']; 
    echo "<br>"; 
    echo $pay=$_GET['mode']; 
    echo "<br>"; 
    echo $total=$_GET['total']; 
    echo "<br>"; 

    //echo "".$_SESSION['cart']; 
    //echo $total=$_SESSION['id']; 
    //echo $total=$_GET['total']; 
    $servername = "localhost"; 
    $username = "root"; 
    $password = "root"; 
    $dbname = "admin1"; 

    // Create connection 
    $conn = new mysqli($servername, $username, $password, $dbname); 
    // Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 
    echo "connected successfully"; 
    echo"<br>"; 
    $success= false; 
    foreach ($_SESSION['cart'] as $value){ 
     // print_r($_SESSION); 
    //print_r($_SESSION['cart']); 
     $sql="INSERT INTO orders(total,id,qty,address,cont,mail,mode) values ('".$total."','".$value['id']."','".$value['qty']."','".$address."','".$con."','".$mail."','".$pay."')"; 

     if ($conn->query($sql) === TRUE) { 
      $success = true; 
     } else { 
      echo "Error: " . $sql . "<br>" . $conn->error; 
      $success = false; 
      break; 
     } 

    } 

    if($success) 
    echo "New record created successfully"; 

?> 
+0

@Abhi, ist dieser Arbeits ..? –

+0

ja seine working..thanx viel @Rohit Goyani – abhi

+0

ich werde tun ... Danke noch einmal @ Rohit Goyani – abhi

Verwandte Themen