如何在<script>标记中取消设置会话?

时间:2015-10-22 15:39:55

标签: javascript php

是否可以在&lt; script&gt; 标签中取消 $ _ session ?&#xA;我有这个脚本(用于结帐),之后它弹出,点击“确定”它将使用 unset($ _ SESSION ['cart'])清除我的购物车;我怎样才能做到这一点?谢谢。

&#xA;&#xA;
  echo“&lt; script&gt; alert('感谢您订购!我们会保持联系!'); window.location ='购物车。 PHP';&LT; /脚本&gt;“中;&#XA;  
&#XA;

3 个答案:

答案 0 :(得分:3)

我不确定你是否可以这样做,但你可以这样做。

echo "<script> alert('Thank You For Ordering! We will Keep in Touch!');
        window.location='unset.php';</script>";

您的unset.php

<?php 
     unset($_SESSION['session index']); 
     header('Location: cart.php'); 
?>

答案 1 :(得分:2)

您无法在客户端(在Javascript中)取消设置会话,因为会话数据保存在服务器上。

您可以调用服务器告诉它取消设置会话(重定向或AJAX调用将起作用)。

理论上,如果你想避免在那个时候与服务器通信,你可以在客户端删除会话cookie,但是有一些事情可以抓住:

  • 它依赖于你知道会话cookie的名称,并且有一天不会改变
  • 它依赖于存储在cookie中的会话ID(它们可以存储为请求参数,并且将来可以采用其他方式)
  • 实际上并没有释放与该会话相关联的服务器上的数据,不必要地消耗服务器的资源

答案 2 :(得分:1)

你能不能只清除会话ID cookie?

document.cookie="PHPSESSID=''";