我正在尝试做一个工作的"购物车"。我在网上跟随教程,因为我是一个很新的编码。目前,我只是试图打印出"id"的每一个单独的项目,存储在数据库,但它返回的所有是8。这里是我的一些代码,你可能需要看到:
- 我的JavaScript:**
function component($productname,$productprice,$productimg,$productid){
$element = '
<div class="product-boxes">
<img src="'.$productimg.'">
<h3>'.$productname.' <h3>
<p>'.$productprice.'</p>
<button type="submit" name="add">Add to cart</button>
<input type="number" name="product-id" value="'.$productid.'">
</div>
';
echo $element;
}
function getData(){
$dbServername = "localhost";
$dbUsername = "root";
$dbPassword = "";
$dbName = "productDatabase";
$conn = mysqli_connect($dbServername,$dbUsername,$dbPassword,$dbName);
$sql = "SELECT * FROM product";
$result = mysqli_query($conn,$sql);
if(mysqli_num_rows($result) > 0){
return $result;
}
}
- 我的html:**
一个二个一个一个
这最后一段代码是用来显示每一个物品的id的。但是它只显示了8,我想这和显示http://localhost/test/index.php?product-id=1&add=&product-id=2&product-id=3&product-id=4&product-id=5&product-id=6&product-id=7&product-id=8
的url有关。我不知道为什么它在url中有这么多的product-id。这可能是很简单的事情,但是我不知道,因为我是新来的。哈哈。谢谢。
我不知道该怎么修。
1条答案
按热度按时间oug3syen1#
您在URL中看到多个"product-id"的原因是,您有多个表单元素具有相同的名称"product-id",并且当您提交表单时,它们都在URL中提交。
要解决此问题,您可以为每个表单元素指定一个唯一的名称,方法是将产品ID附加到名称,如下所示:
更改此内容:
对此:
然后在PHP代码中,您可以访问每个商品的产品ID,如下所示:
}
这应该可以解决问题,并为每个项目打印出正确的产品ID。