它只发布"数组"的值。而不是预期的价值

时间:2014-10-29 08:54:48

标签: php mysql

我的代码如下:

<?php
if(isset($_SESSION["products"])) {
    $total = 0;
    echo '<form action="cart-post-config.php" enctype="multipart/form-data" method="POST">>';
    foreach ($_SESSION["products"] as $cart_itm) {
                    echo '<tr>';
                    echo '<td></td>';
                    echo '<td><input type="text" name="product_name[]" value="'.$cart_itm["name"].'"/></td>';
                    echo '<td><input type="text" name="product_price[]" value="'.$cart_itm["price"].'"/></td>';
                    echo '<td><input type="text" name="product_quantity[]" value="'.$cart_itm["qty"].'"/></td>';                            
                    $totalPerEach = ($cart_itm["price"]*$cart_itm["qty"]);

                    echo '<td><input type="text" name="product_eachTotal[]" value="'.$totalPerEach.'"/></td>';
                    echo '<td>View Save Delete</td>';
                    echo '</tr>';
    }
    echo '<input type="submit" name="submit" />';
    echo '</form>';//close the form
}
else {
    echo 'Your Cart is empty'; }
?>

上面的代码用于收集成员的购物车信息,其中已收集的信息被放到将要发布到数据库的表单的输入中。

这是配置:

if($_SERVER["REQUEST_METHOD"] == "POST")
    {
        for($i=0; $i<count($_POST['product_name']);$i++)
            {
                $product_name=$_POST['product_name'][$i];
                $product_price=$_POST['product_price'][$i];
                $product_quantity=$_POST['product_quantity'][$i];
                $product_eachTotal=$_POST['product_eachTotal'][$i];

        mysql_query("insert into member_cart (cart_code, product_cart_name, product_cart_price, product_cart_quantity, total_cart_price) 
                    values(0, '$product_name',  '$product_price', '$product_quantity', '$product_eachTotal')");
            }
    }

上面的配置将被读取将发布的表格,其中将循环添加到图表中的eahc产品行。

我现在的问题是在数据库中发布表单,product_cart_quantity行和total_cart_price' only got the text/data of Array`行之后。

请帮助我不知道我在这里做错了什么。

由于

1 个答案:

答案 0 :(得分:0)

您已将$product_price设置为3个不同的值,最终为product_eachTotal。以下是更正后的代码。

if($_SERVER["REQUEST_METHOD"] == "POST") {
    for($i=0; $i<count($_POST['product_name']);$i++) {

        $product_name=$_POST['product_name'][$i];
        $product_price=$_POST['product_price'][$i];
        $product_quantity=$_POST['product_quantity'][$i];
        $product_eachTotal=$_POST['product_eachTotal'][$i];

        mysql_query("insert into member_cart (cart_code, product_cart_name, product_cart_price, product_cart_quantity, total_cart_price) 
                     values(0, '$product_name',  '$product_price', '$product_quantity', '$product_eachTotal')");
    }
}