Php 会话中未定义的变量
请帮助我获取要检索的第二个网页上的会话变量。。。 在my index.php页面上,当管理员登录时,名为$_SESSION['Admin']的管理变量被指定为“开”或“关”Php 会话中未定义的变量,php,Php,请帮助我获取要检索的第二个网页上的会话变量。。。 在my index.php页面上,当管理员登录时,名为$_SESSION['Admin']的管理变量被指定为“开”或“关” session_save_path ("Temp"); session_start(); /////////////////////////////////If session not set, turn admin off if( ! isset($_SESSION['Admin'])){ $_
session_save_path ("Temp");
session_start();
/////////////////////////////////If session not set, turn admin off
if( ! isset($_SESSION['Admin'])){
$_SESSION['Admin'] ='off';
}
///////////////the code to set SESSION when admin logs in
if ($AdminStringAllowed=='password'){
$_SESSION['Admin'] ='on'; //turn on admin for successful password
} else {
$_SESSION['Admin'] ='off'; //else turn off admin for password fail
}
这很好,会话变量被检索并在index.php主页上使用
但是当我超链接到另一个网页(这些是HTML网页)时,PHP代码不会检索会话变量,如果它说它是未定义的……这似乎表明会话甚至不存在,但它是由主页index.PHP创建的
temp文件夹显示会话正在工作,strong中的admin“on”显示会话正在工作
这是一个示例网页
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
echo "<p>Hello php ".$_SESSION['Admin'];
if ($_SESSION['Admin'] =='on'){ etc etc
}
您需要添加会话_start()代码>在其他网页中
当然,它需要是一个.php文件
session_start();
您忘记启动会话当我将HTML文件保存为PHP文件时,同样的问题仍然发生,未定义索引:AdminHave u addedsession_start()代码>?我现在没有错误,但是index.php说SESSION['Admin']是“开”的,而上面代码的第二个页面说SESSION['Admin']是“关”的。。。。如果将index.php页面上的变量设置为“on”,则无法正确读取变量…为什么会话变量无法通过?感谢大家解决了这个问题…问题得到了解决,只是因为第二页上的会话不知道在哪里可以找到会话文件,在第一页的哪个文件夹中。。。。因此,对于那些需要帮助的人,索引页代码被写为session_save_path(“temp”)session_start();它定义了一个用于放置会话的文件夹,并在第二个网页上添加会话所在的位置。。。。ie添加会话\u保存路径(“../temp”)会话\u开始()…现在一切正常…谢谢大家。。。