我正在做一个像购物车一样的小项目。 当我点击此链接时:
echo "<td><a href=\"$_SERVER[PHP_SELF]?action=zero&commitbuy.php?ids=$id&qoh=$qtyhand&qtb=$quantity\">ok</a></td>";
我希望程序执行零操作,当我点击ok链接时,它将从购物车表中删除产品:
<?php
$product_id = $_GET['id'];
$action = $_GET['action'];
if($product_id && !productExists($product_id)) {
die("Error. Product Doesn't Exist");
}
switch($action) {
case "add":
$_SESSION['cart'][$product_id]++;
break;
case "remove":
$_SESSION['cart'][$product_id]--;
if($_SESSION['cart'][$product_id] == 0) unset($_SESSION['cart'][$product_id]);
break;
case "zero":
$_SESSION['cart'][$product_id]==0;
break;
case "empty":
unset($_SESSION['cart']);
break;
}
?>
然后,commitbuy.php将更新该特定产品的数量。 你有什么建议我会这样做。它似乎不起作用。当我添加此代码时:
$_SERVER[PHP_SELF]?action=zero
到这一个:
echo "<td><a href=\"commitbuy.php?ids=$id&qoh=$qtyhand&qtb=$quantity\">ok</a></td>";
答案 0 :(得分:0)
您收到错误是因为在某些(但不是全部)服务器上,PHP_SELF
已经是已定义的常量,因此$_SERVER[PHP_SELF]
与调用$_SERVER['/path/commitbuy.php']
相同
要解决此问题,请改用$_SERVER['PHP_SELF']
。