我在案例“删除”时遇到语法错误。我一直试图解决它,但我无法弄明白。 谁能告诉我如何解决它?谢谢
该代码适用于在线商店购物车
switch($action)
{
case "add":
if (isset($_SESSION['cart'][$id]))
$_SESSION['cart'][$id]++;
else
$_SESSION['cart'][$id]=1;
break;
case "remove":
if (isset($_SESSION['cart'][$id]))
(
$_SESSION['cart'][$id]--; (ERROR HERE)
if ($_SESSION['cart'][$id]==0)
unset($_SESSION['cart'][$id]);
)
break;
case "empty":
unset($_SESSION['cart']);
break;
}
答案 0 :(得分:6)
您的IF语句使用括号而不是括号:
if (isset($_SESSION['cart'][$id]))
( <-- HERE
$_SESSION['cart'][$id]--; (ERROR HERE)
if ($_SESSION['cart'][$id]==0)
unset($_SESSION['cart'][$id]);
) <-- HERE
答案 1 :(得分:1)
请将(
和)
替换为{
和}
更正后的代码:
case "remove":
if (isset($_SESSION['cart'][$id]))
{
$_SESSION['cart'][$id]--; (ERROR HERE)
if ($_SESSION['cart'][$id]==0)
unset($_SESSION['cart'][$id]);
}
break;
答案 2 :(得分:0)
//语法错误,找到更正的代码!!
switch($action)
{
case "add":
if (isset($_SESSION['cart'][$id])) {
$_SESSION['cart'][$id]++;
}
else {
$_SESSION['cart'][$id]=1;
}
break;
case "remove":
if (isset($_SESSION['cart'][$id])) {
$_SESSION['cart'][$id]--; //(ERROR HERE)
}
if ($_SESSION['cart'][$id]==0) {
unset($_SESSION['cart'][$id]);
}
break;
case "empty":
unset($_SESSION['cart']);
break;
}