2017-04-03 7 views
-3

私は電子商取引のWebサイトから注文をmysqlに追加しようとしていますが、最後の商品が挿入されたようです。これは、あなたがforeachの中で参照を使用して、次のことを行うことができますPHPコードmysqlに注文を追加する

if (isset($_POST['suborder'])) { 

    $itemname = $_POST['item_name_{itemname}']; 
    $itemprice = $_POST['item_price_{itemprice}']; 
    $quantity = $_POST['quantity_{quantity}']; 
    $subtot = $_POST['subtot_{subtot}']; 


    $poof = $con->command("INSERT INTO orders(product_name,price,quantity,sub_total) VALUES(:itemname,:itemprice,:quantity,:subtot) "); 

    $poof->bindParam(':itemname', $itemname); 
    $poof->bindParam(':itemprice', $itemprice); 
    $poof->bindParam(':quantity', $quantity); 
    $poof->bindParam(':subtot', $subtot); 


    $poof->execute(); 


} 
+5

最後の製品のみが挿入されますか?どこかにループがありますか?複数の商品ですか?私は現時点であなたのコードにエラーは見られません。 – Webbanditten

+0

カートに1つ以上の製品がある場合は、ループを作成して 'INSERT'文のリストを生成するか、またはinsert insert文を使用してデータをDBに保存します。 – CodeMonkey

+0

はい最後の製品のみが挿入され、私のコードにループはありません –

答えて

0

です:

foreachの($キー=> & $値として$のREINDEX){//パス$値として配列の項目への参照 $ stmt-> bindParam($ key、$ value); //変数をステートメントにバインドします }

関連する問題