在此代码中,我检索用户添加到购物车中的每个产品,并在每个产品下面删除'按钮。问题是我想为每个设置一个隐藏值,并且能够在单击按钮时获取值。 (我知道这样做的一种方法是为type = submit按钮设置相同的名称,但设置它们的值彼此不同,但值会显示在按钮本身上,我不想要。)谢谢你提前。
while ($isready= mysqli_fetch_array($getinfo))
{
echo "<br>$isready[1] $isready[2] BD $isready[4]";
echo '<br><input name="removefromcart" type="submit" value="remove">';
echo '<input type=hidden name="removed" value="'.$isready[0].'"">';
$i++;
}`enter code here`
$mult= $isready[2]* $isready[4];
$total= $total +$mult;
echo "<br><br>$total BD";
if (isset($_POST['removefromcart']))
{
$removebutton=$_POST['removefromcart'];
$conn->query("DELETE FROM `addedtocart` WHERE ID=$removebutton");
$conn->query("ALTER TABLE addedtocart AUTO_INCREMENT=$removebutton");
}
答案 0 :(得分:1)
避免SQL注入,使用预准备语句和参数化查询获取更多信息 HERE 为了方便起见,下面的代码仍然容易受到攻击:
此代码我稍微修改了一下,我将删除后的值添加到您的查询中,您可以根据需要进行调整:
while ($isready= mysqli_fetch_array($getinfo))
{
echo "<br>$isready[1] $isready[2] BD $isready[4]";
echo '<br><input name="removefromcart" type="submit" value="remove">';
echo '<input type=hidden name="removed" value="'.$isready[0].'"">';
$i++;
}`enter code here`
$mult= $isready[2]* $isready[4];
$total= $total +$mult;
echo "<br><br>$total BD";
if (isset($_POST['removefromcart']))
{
$removebutton=$_POST['removefromcart'];
$removeValue=$_POST['removed'];
$conn->query("DELETE FROM `addedtocart` WHERE ID=".$removeValue);
$conn->query("ALTER TABLE addedtocart AUTO_INCREMENT=".$removeValue);
}