当我登录时,我有两个选项;记不记得我。现在我的问题是"记住我"部分未检查。如果取消选中,则表示创建了会话。
现在的问题是,当创建会话时,如果我直接访问login.php,会话将重置,这意味着不再有会话,我需要再次登录(这是index.php)
以下是我的代码,当用户登录后试图直接转到login.php时,我需要它在post.php上运行!它在有cookie的情况下工作(记住我检查过了),但在有会话的情况下不工作。
在login.php中进行正确的loggin后,您将获得代码:$_SESSION['sess_username'] = $userData['username'];
但在login.php的顶部,您可以检查用户是否通过以下方式登录:isset($_SESSION['username'])
它应该是:isset($_SESSION['sess_username'])
现在,如果你说他们想被记住,你就不会在会话变量$_session['sess_username]中放入任何内容。所以下一页它将是空的,这会让你的网站认为你没有登录
我从未使用过函数session_write_close();
一个快速的谷歌给了我这个。
"void session_write_close(void)-结束当前会话并存储会话数据。"
你确定你使用的是正确的吗?当它声明关闭当前会话时。