我有几个关于基于 PHP 会话的登录的问题。我使用以下教程创建了一个登录表单,该表单连接到我拥有的现有用户数据库:
http://www.sourcecodester.com/tutorials/php/4341/how-create-login-page-phpmysql.html
大部分我都懂,但我只想查询一些我不明白的事情:
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['mem_id'];
$_SESSION['SESS_FIRST_NAME'] = $member['username'];
$_SESSION['SESS_LAST_NAME'] = $member['password'];
session_write_close();
header("location: home.php");
exit();
以下代码进入 login_exec.php 页面 - 我认为此代码在成功登录时设置会话 ID - 我正确吗?
我不明白的是“SESS_MEMBER_ID”、“SESS_FIRST_NAME”和“SESS_LAST_NAME”的原因——为什么会在那里,它到底在做什么?
我的第二个问题。在“home.php”中 - 当用户单击“注销”时,他们会被引导回 index.php,并且会话正在以某种方式被破坏。单击“注销”时,会话究竟是如何被破坏的。
第三,是否可以更改“home.php”,以便有一个 if/else 语句,上面写着“if logged_in echo”yay,you are logged in”,其中包含各种登录内容,“else if not_logged_in echo "对不起,您没有登录,无法查看该页面,请到以下页面登录"。如果有可能,我会怎么做?
非常感谢