我正在研究PHP应用程序的问题。由一些元素组成的主页具体处理登录表单。在该文件/元素中,如果按下登录按钮,我尝试登录。如果数据库中没有这样的用户或没有插入信息(这是相同的方式)我在会话数组中设置特定键的特定值直到应用程序结束时,我var_dump
数组$_SESSION
才能看到它的内容。直到应用程序结束一切都很好,但是在页面第一行后再次加载session_start
I var_dump
$_SESSION
数组时,在页眉中,此特定索引已具有不同的值。我无法理解它的设置。
很抱歉,对于非代码说明,但由于它是商业应用程序,我无法提供任何代码。
更新
index.php - 第一行
require_once( dirname( __FILE__ ) . '/header.php' );
header.php - 第一行
session_start();
var_dump( $_SESSION );
loginForm.php - 设置值的位置
$_SESSION['lverifier'] = 3;
var_dump( $_SESSION );
index.php - 最后一行
require_once( dirname( __FILE__ ) . '/footer.php' );
var_dump( $_SESSION );
答案 0 :(得分:1)
您必须在之前发布session_start()
才能访问会话变量:
当访问者访问您的网站时,PHP会自动检查(如果session.auto_start设置为1)或您的请求(明确地通过session_start()或隐式地通过session_register())是否具体会话ID已随请求一起发送。如果是这种情况,则重新创建先前保存的环境。