PHP,如何注销帐户?会话有帮助吗?
如何在我的系统中对帐户注销进行编码。我使用header()将其返回到索引页,并销毁所有存在的会话变量。它会破坏会话,但会返回到上一页,没有会话变量(如用户名)。我的网站的此注销模块的最佳方法是什么?您只需清空PHP,如何注销帐户?会话有帮助吗?,php,html,session,session-variables,logout,Php,Html,Session,Session Variables,Logout,如何在我的系统中对帐户注销进行编码。我使用header()将其返回到索引页,并销毁所有存在的会话变量。它会破坏会话,但会返回到上一页,没有会话变量(如用户名)。我的网站的此注销模块的最佳方法是什么?您只需清空$\u会话这或多或少就是我所做的: 在显示每个需要有效登录的页面之前,都会在数据库中检查有效的会话变量以及相应的活动登录会话记录。如果不满足这些条件,用户将被重定向并发出错误警报 <a href='logout.php'>Logout</a> 编辑:在需要登录的页面
$\u会话
这或多或少就是我所做的:
在显示每个需要有效登录的页面之前,都会在数据库中检查有效的会话变量以及相应的活动登录会话记录。如果不满足这些条件,用户将被重定向并发出错误警报
<a href='logout.php'>Logout</a>
编辑:在需要登录的页面顶部,我会有如下内容:
session_start();
if (empty($_SESSION["loginCode"]) || empty($_SESSION["userCode"]))
header('index.php?alert=Invalid session');
在我的例子中,我还检查了在登录期间创建的许多其他会话变量的存在,并且还检查了会话值与数据库的一致性。(我将所有测试放在一个函数中,例如,
isValidSession()
,该函数返回true或false,我可以在需要时轻松地将其包含在每个页面上。)“但它返回到上一页时没有会话变量(例如用户名)”–为什么它会有这样的值,当用户只是非常明确地注销时…?不清楚您想要什么。是否要在销毁会话后继续记住用户名?我注销时要做的是在MySQL数据库中记录我的注销时间等,然后取消设置并销毁整个会话,并删除会话cookie。如果没有有效的会话存在,需要会话信息的其他页面应返回错误警报或重定向到某个页面。嗨,Stefan!这样一个伟大的帮助:)我只是想显示一个无效的页面,如果我想点击浏览器上的“后退”按钮,说“你已经退出网站/注销”,所以最好的事情是在每个页面我将需要一个会话变量?谢谢-我对我的文章进行了编辑。在登录期间必须显示的页面上,我会在顶部检查有效会话。如果该检查返回false,您可以重定向到所需的消息页面,或者显示警报并隐藏页面的其余部分,或者执行任何您想执行的操作。
session_start();
if (empty($_SESSION["loginCode"]) || empty($_SESSION["userCode"]))
header('index.php?alert=Invalid session');