学习PHP遇到的session不能删除、清空的问题,手贱啊手贱
超级郁闷的问题,原来是我手贱了
关于删除 session:
http://blog.sina.com.cn/s/blog_a03d702f01011hh4.html
关于删除 cookie:
http://blog.csdn.net/ljl1603/article/details/4263606
写一个登录界面的时候,成功登录后注销出来,尝试了很多代码都没能成功清空
结果仔细观察才发现当时是这样写了:
(我是从html进入login.php,在PHP中判断用户名和密码最后到结果页)
session_start (); // 登录 if (! isset ( $_POST ["submit"] )) { exit ( "<script>location.href="login.html"</script>" ); } // 注销登录 if ($_GET ["action"] == "logout") { $_SESSION = array (); if (isset ( $_COOKIE [session_name ()] )) { setcookie ( session_name (), "", time () - 3600, "/" ); } session_destroy (); // 最后彻底销毁session. echo "<script>alert("已安全注销");location.href="login.html"</script>"; exit (); }
后来在注销登录里写了 alert,也没给弹出来,终于发现。。。我从结果页注销过来哪来的 submit
只是用的 action=logout,果断的修正了,可正常清空,Like This
(先判断是不是 logout 再去判断是不是从首页 submit 进来的,不是就给我去登录)
session_start (); // 注销登录 if ($_GET ["action"] == "logout") { $_SESSION = array (); if (isset ( $_COOKIE [session_name ()] )) { setcookie ( session_name (), "", time () - 3600, "/" ); } session_destroy (); // 最后彻底销毁session. echo "<script>alert("已安全注销");location.href="login.html"</script>"; exit (); } // 登录 if (! isset ( $_POST ["submit"] )) { exit ( "<script>location.href="login.html"</script>" ); }
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: phpStudy 发现存在重大的bug
- 下一篇: php 官方删除session方式