我正在php中创建一个登录模块。我为此使用会话变量。在文件的顶部,我写
session_start();
然后当我的登录密码通过身份验证时,我写
$_SESSION["username"] = $_POST["userid"]
现在我还需要做其他事情来确保开始的会话能够持续吗?因为一旦登录,它就会自动注销?这是否意味着会话在我登录后立即到期?在那种情况下,我应该怎么做才能使会话持续下去?
不,会话旨在停留在请求之间。如果您$_SESSION['username']
在下一个请求中阅读,它将包含您在上一个请求中保存的数据。显然,您需要将session_start();
要与之交互的每个页面放在开头。
把 session_start(); 在您将使用会话变量的页面顶部。并确保您没有在登录脚本中取消设置会话。
session_start()
不启动会话,它启动会话引擎。它必须在您想要访问会话的每个页面上运行。
您需要session_start();
在要访问 Session 数据的所有文件的顶部
在顶部,session_start();
还要在您要使用会话的每个页面上放置,您需要此功能。
只要您没有删除会话或关闭浏览器,会话就会持续,不确定它是否会在某个时间过期。要检查您是否仍处于登录状态,您可以使用 访问会话$username = $_SESSION['username'];
,或者该功能isset($_SESSION['username'])
也有帮助。