Php 以数组形式获取用户输入并逐个分发
我正在开发一个网站,可以让用户买东西。如果用户一次购买许多物品,问题就来了 例如: 用户购买了数量为2的物品1 用户B购买了数量为1的项目2 我希望确认页面显示:Php 以数组形式获取用户输入并逐个分发,php,Php,我正在开发一个网站,可以让用户买东西。如果用户一次购买许多物品,问题就来了 例如: 用户购买了数量为2的物品1 用户B购买了数量为1的项目2 我希望确认页面显示: You have bought Item 1, quantity: 2 Item 2, quantity: 1 问题是我找不到如何根据所选项目获取每个数量。我只是能够像这样直接显示 You have bought Item 1, quantity: 2 quantity 1 Item 2, quantity: 2 quantity
You have bought
Item 1, quantity: 2
Item 2, quantity: 1
问题是我找不到如何根据所选项目获取每个数量。我只是能够像这样直接显示
You have bought
Item 1, quantity: 2 quantity 1
Item 2, quantity: 2 quantity 1
这是我的用户输入表单
echo "<input type=\"text\" hidden name=\"cart[]\" id=\"itemIDValue\" value=\" ".$itemID ."\"/>";
echo "<input type=\"text\" hidden name=\"qty[]\" value=\"".$itemQty."\">";
这是我的PHP代码
$sql = "this will get all the data from database";
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_array($result)){
echo"<p> Brand : " . $row[4] . " </p>
<p> Name : " . $row[3] ."</p>";
}
基本上,我可以正确地获得商品名称和品牌,但我无法正确地获得该特定商品的数量
我尝试使用foreach循环
while ($row = mysqli_fetch_array($result)){
foreach($qty as $a => $value){
echo"<p> Brand : " . $row[0] . " </p>
<p> Name : " . $row[1] ."</p>
<p> Qty : " . $value . "</p>";
}
}
foreach循环将提供我想要的,但现在的问题是,如果用户购买了2个项目,数据输出将重复,结果将有4个项目2个项目2
有人能帮我吗?非常感谢您给予的任何帮助。谢谢这是针对您的问题的一个改编版本, 已经回答了这个问题dublicate:
请告诉我们数据库表的结构以及您使用的MYSQL查询。可能您应该对找到的项目进行分组和计数。这里的数量不是来自数据库,而是来自用户输入。好的,阿尔文,那么为什么这一行$sql=this将从数据库获取所有数据;?可能有点愚蠢,看看我的评论吧。我想这就是你的解决办法。
while ($row = mysqli_fetch_array($result)){
// that's what you need:
$qty=$_POST['qty'];
foreach($qty as $a => $value){
echo"<p> Brand : " . $row[0] . " </p>
<p> Name : " . $row[1] ."</p>
<p> Qty : " . $value . "</p>";
}
}