我的会话似乎并未保存。我有一个登录页面,将用户ID保存为会话。但是,当我离开页面并单击其他页面时,会话不会被保存。会话和包含页面
这是我的代码。我有一个名为指数 .PHP看起来像这样的一个主页:
<?php
if(!isset($_SESSION)){
session_start();
}
?>
<!DOCTYPE html> <HTML> <HEAD> </HEAD> <BODY>
<?php
$page_content = 'startpage.php';
if (isset($_GET['link']) && !empty($_GET['link'])) {
$page_content = $_GET['link'];
}
include "$page_content";
include 'menu.php';
include 'footer.php';
?>
登陆我用这个页面调用admin.php的。在这个页面中,我有一个可以正常工作的登录代码。 如果用户写正确的用户名和密码,然后出现这种情况:
$_SESSION['user_id'] = $user_id;
print_r($_SESSION);
上面的代码显示了当前的会话变量。但一旦点击另一页面,变量就会保持空白。
在index.php文件的底部是包括footer.php页,它看起来像这样:
<?php
if(!isset($_SESSION['user_id'])){
echo "The sessions are not initiated. ";
}
if (empty ($_SESSION['user_id'])) {
echo "The sessions are empty. ";
}
echo "<a href='index.php?link=admin.php'>Administration</a>";
?>
在这个页脚我已经放了两个问题,如果检查会议。 当我成功登录并单击其他页面后,如果问题检测到我的会话为空并且未启动。
我应该如何让会话正常工作?
也许我应该补充一点,我使用一个使用MySql的租用数据库。
哪里都将不能正常工作,你的的在session_start()? – Drewdin
这是在我的主页:index.php。不知何故,这在我的问题中是不可见的。 – Olof84