如果选择了不同的餐厅,则清除购物车


Clear cart if different restaurant is selected

我正在使用cart来存储用户决定购买的会话中的值。现在我想用以下方式处理购物车:

具有项目详细信息的页面的url为http://example.com?id=10

  1. 一旦商品被添加到购物车中,我们假设用户更改了餐厅,并再次登录页面,在那里他可以再次添加商品。

    a。如果用户选择的餐厅与之前不同,那么所有项目都应该像之前选择的餐厅一样删除。

    b。若餐厅是一样的,那个么就保持原样。

我正在通过URL中传递的Id检查餐厅。

我尝试将Id存储在页面上的会话中,但如何在同一页面上验证餐厅是否相同。下面是我尝试的代码

$_SESSION['res_in_se'] = $_GET['id'] ;
 if($_SESSION['res_in_se'] != $_GET['id']){
     $cart->empty_cart();
 }

您可以通过以下方式获得结果:首先检查会话是否为空,比如用户第一次选择餐厅时,将会话值设置为餐厅id。只有当用户选择的餐厅与上一家不同时,下次才需要重置会话值。你的代码是:

if(empty($_SESSION['res_in_se']) && isset($_GET['id'])) {
$_SESSION['res_in_se'] = $_GET['id'] ;
}
else
 if($_SESSION['res_in_se'] != $_GET['id']){
     $cart->empty_cart();
     $_SESSION['res_in_se'] = $_GET['id'] ;
 }