在使用Proton文本编辑器和实时Web服务器进行了长时间的“硬核编程”后,我尝试使用XAMPP在家用PC上为我的PHP / MySQL项目设置测试环境。数据库已设置,服务器正在运行,我可以看到我的页面......但XAMPP似乎没有读出我的$ _SESSION变量。
以下是代码中不起作用的部分,它是文件的开头,在打印其他内容之前:
<?
require('usrctrl/main.php'); // stores database credentials
session_start();
if((!isset($_SESSION['uid'])) || (!isset($_SESSION['pwd']))) {
$loggedin = false;
$usertype = -1;
}
else
{
$uid = $_SESSION['uid'];
$pwd = $_SESSION['pwd'];
...
之后,将根据存储的ID和密码(如果存在)进行检查。但它们总是为空,或者,如果我尝试访问它们,它会在第5行“C:\ xampp \ htdocs \ Sig2 \ index.php中显示未定义的索引:uid”。
此代码一直在Web服务器上运行。我还检查了cookie是否已设置,Mozilla Firefox告诉我存储了127.0.0.1的会话cookie。所以看起来XAMPP似乎没有阅读它。我需要编辑一个设置吗?
我已经google了一下,发现很多人都有这个问题,但是他们通常会忘记session_start()部分,我在我的代码中有这个部分。
PHP版本是5.3.8 MySQL版本:5.5.16
提前致谢!