所以我正在制作一个 php 页面,它将接收上一个 php 页面的所有数据。我已经显示了产品列表,但每次我单击“添加到购物车”按钮时,它只读取最后一个产品的数量。
while($row=mysql_fetch_array($result)) {
$dib = $row['db_prod_id'];
$Item_ID =$row['bbs_prod_id'];
$Item_Name =$row['prod_name'];
$Item_Description =$row['description'];
$Price =$row['price'];
$Item_Image =$row['item_image'];
echo "<input type='hidden' name='dib' value='$dib'>";
echo "<input type='hidden' name='id' value='$Item_ID'>";
echo "<input type='hidden' name='name' value='$Item_Name'>";
echo "<input type='hidden' name='desc' value='$Item_Description'>";
echo "<input type='hidden' name='price' value='$Price'>";
echo "<input type='hidden' name='img' value='$Item_Image'>";
echo "<tr>";
echo "<th><label>$Item_ID</label></th>";
echo "<th><label>$Item_Name</label></th>";
echo "<th><label>$Item_Description</label></th>";
echo "<th><label>$Price</label></th>";
echo "<th><img src='$Item_Image' height='100' width='100'></th>";
echo "<th><input type='text' value='' placeholder='how many' name='quantity'>";
echo "<th><input type='submit' value='Add to Cart'></th>";
echo "<tr>";
我只测试数量的通过。 只有最后一项与数量相呼应。
session_start();
$user = $_SESSION['bbs_buyer_login'];
require("dbconnect.php");
$quantity = $_POST['quantity'];
echo "$quantity";
我的 list 上已经有 3 件商品,但只有第三件商品反射(reflect)了数量,并且只有在我每次单击“添加到购物车”按钮时才会被读取。
请帮忙。谢谢!
最佳答案
你已经进入循环了。将您的输入更改为数组:
echo "<th><input type='text' value='' placeholder='how many' name='quantity[]'>";
那么$_POST['quantity']
将是一个包含数量的数组。您可以通过
print_r($_POST['quantity']);
或
var_dump($_POST['quantity']);
我不知道你的其余代码是如何工作的,但在这种情况下它应该可以解决问题。
关于php - 传值PHP(在线购物车),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41832010/