如何使用表单和PHP将多维数据从一个页面传递到另一个页面?

如何使用表单和PHP将多维数据从一个页面传递到另一个页面?,php,html,forms,Php,Html,Forms,我试图使用表单作为多维数组,将与每个项相关的多个值从一个页面传递到另一个页面。这是一种购物车。我使用表单通过隐藏值传递变量。使用echo输入这些变量的值。变量值用PHP表示。我需要在另一个PHP页面上使用这些值 我需要在第2页中以表格的形式获取这些数据,从中我可以使用orderitem['quantity']等调用这些数据。但无论我尝试了什么,我都会不断出错。请帮忙 第1页: <input type="hidden" name="orderitem[item][]" value="<

我试图使用表单作为多维数组,将与每个项相关的多个值从一个页面传递到另一个页面。这是一种购物车。我使用表单通过隐藏值传递变量。使用echo输入这些变量的值。变量值用PHP表示。我需要在另一个PHP页面上使用这些值

我需要在第2页中以表格的形式获取这些数据,从中我可以使用orderitem['quantity']等调用这些数据。但无论我尝试了什么,我都会不断出错。请帮忙

第1页:

<input type="hidden" name="orderitem[item][]" value="<?php echo $order_cart_item; ?>">
         <input type="hidden" name="orderitem[quantity][]" value="<?php echo $order_cart[$i]['item_q']; ?>">
         <input type="hidden" name="orderitem[price][]" value="<?php echo $row['item_price'];?>">
         <input type="hidden" name="orderitem[total][]" value="<?php echo $row['item_price']*$order_cart[$i]['item_q'];?>">
         <textarea name="orderitem[comments][]" rows="3" cols="35" placeholder="Please mention special requests if you have any. (Example: Happy Birthday Jerry!)"></textarea>
Var转储的结果:

Arrayarray(5) { ["item"]=> array(2) { [0]=> string(6) "CC9011" [1]=> string(6) "CCC675" } ["quantity"]=> array(2) { [0]=> string(1) "4" [1]=> string(1) "2" } ["price"]=> array(2) { [0]=> string(3) "900" [1]=> string(2) "60" } ["total"]=> array(2) { [0]=> string(4) "3600" [1]=> string(3) "120" } ["comments"]=> array(2) { [0]=> string(0) "" [1]=> string(0) "" } }
第2页中的输出:

Product ID  Quantity    Amount  Total   
Notice: Undefined index: itemcode in /opt/lampp/htdocs/momsoven/orderconfirmation.php on line 96

Notice: Array to string conversion in /opt/lampp/htdocs/momsoven/orderconfirmation.php on line 96
Array   
Notice: Array to string conversion in /opt/lampp/htdocs/momsoven/orderconfirmation.php on line 96
Array   
Notice: Array to string conversion in /opt/lampp/htdocs/momsoven/orderconfirmation.php on line 96
Arrayarray(5) { ["item"]=> array(2) { [0]=> string(6) "CC9011" [1]=> string(6) "CCC675" } ["quantity"]=> array(2) { [0]=> string(1) "4" [1]=> string(1) "2" } ["price"]=> array(2) { [0]=> string(3) "900" [1]=> string(2) "60" } ["total"]=> array(2) { [0]=> string(4) "3600" [1]=> string(3) "120" } ["comments"]=> array(2) { [0]=> string(0) "" [1]=> string(0) "" } }

在foreach循环中,$var是数组的值。您不需要使用foreach循环

<?php
if(isset($_POST["submit"])){
    $result = $_POST['orderitem'];
    echo "Product ID\tQuantity\tAmount\tTotal\t";
    echo "\n", $result["item"], "\t\t", $result["quantity"], "\t\t",$result["price"], "\t\t", $result["total"];
}
?>

如果相同的输入字段有多条记录,请将表单输入元素添加为数组

<?php
 if(isset($_POST["submit"])){
$result = $_POST['orderitem'];
echo "Product ID\tQuantity\tAmount\tTotal\t";

    for($i=0 ; $i<count($result['quantity']); $i++){
        echo "\n", $result["item"][$i], "\t\t", $result["quantity"][$i], "\t\t",$result["price"][$i], "\t\t", $result["total"][$i];
    }
 }

?>


<form name="test" method="post">

    <input type="hidden" name="orderitem[item][]" value="order_cart_items">
    <input type="hidden" name="orderitem[quantity][]" value="item_q">
    <input type="hidden" name="orderitem[price][]" value="item_price">
    <input type="hidden" name="orderitem[total][]" value="item_price">
    <textarea name="orderitem[comments][]" rows="3" cols="35" placeholder="Please mention special requests if you have any. (Example: Happy Birthday Jerry!)"></textarea>


    <input type="hidden" name="orderitem[item][]" value="order_cart_items">
    <input type="hidden" name="orderitem[quantity][]" value="item_q">
    <input type="hidden" name="orderitem[price][]" value="item_price">
    <input type="hidden" name="orderitem[total][]" value="item_price">
    <textarea name="orderitem[comments][]" rows="3" cols="35" placeholder="Please mention special requests if you have any. (Example: Happy Birthday Jerry!)"></textarea>



    <input type="submit" name="submit" value="submit"> 
</form>

在foreach循环中,$var是数组的值。您不需要使用foreach循环

<?php
if(isset($_POST["submit"])){
    $result = $_POST['orderitem'];
    echo "Product ID\tQuantity\tAmount\tTotal\t";
    echo "\n", $result["item"], "\t\t", $result["quantity"], "\t\t",$result["price"], "\t\t", $result["total"];
}
?>

如果相同的输入字段有多条记录,请将表单输入元素添加为数组

<?php
 if(isset($_POST["submit"])){
$result = $_POST['orderitem'];
echo "Product ID\tQuantity\tAmount\tTotal\t";

    for($i=0 ; $i<count($result['quantity']); $i++){
        echo "\n", $result["item"][$i], "\t\t", $result["quantity"][$i], "\t\t",$result["price"][$i], "\t\t", $result["total"][$i];
    }
 }

?>


<form name="test" method="post">

    <input type="hidden" name="orderitem[item][]" value="order_cart_items">
    <input type="hidden" name="orderitem[quantity][]" value="item_q">
    <input type="hidden" name="orderitem[price][]" value="item_price">
    <input type="hidden" name="orderitem[total][]" value="item_price">
    <textarea name="orderitem[comments][]" rows="3" cols="35" placeholder="Please mention special requests if you have any. (Example: Happy Birthday Jerry!)"></textarea>


    <input type="hidden" name="orderitem[item][]" value="order_cart_items">
    <input type="hidden" name="orderitem[quantity][]" value="item_q">
    <input type="hidden" name="orderitem[price][]" value="item_price">
    <input type="hidden" name="orderitem[total][]" value="item_price">
    <textarea name="orderitem[comments][]" rows="3" cols="35" placeholder="Please mention special requests if you have any. (Example: Happy Birthday Jerry!)"></textarea>



    <input type="submit" name="submit" value="submit"> 
</form>

我试过打印($\u POST['orderitem']);我得到的输出是数组([项目]=>CC9011[数量]=>2[价格]=>900[总计]=>1800[评论]=>)。项仅为数组的一列。我需要所有列可以访问,项目,价格,总额,数量,评论。请检查我在第1页中编写的html代码。我尝试打印($\u POST['orderitem']);我得到的输出是数组([项目]=>CC9011[数量]=>2[价格]=>900[总计]=>1800[评论]=>)。项仅为数组的一列。我需要所有列可以访问,项目,价格,总额,数量,评论。请检查我在第1页写的html代码。