我有一个登录页面,用户在其中输入他的用户名和密码。如果成功,我将他重定向到我开始会话的 index.php:
session_start();
从 index.php 他可以导航到不同的页面(“p1.php”),在“p1.php”之上我有这个检查:
<?php
if(!isset($_SESSION))
{
exit;
}
?>
这适用于我的本地服务器,但是当我在远程服务器上部署它时!isset($_SESSION)
总是返回 true。
这里会发生什么?
编辑:我在我的托管服务提供商方面发现了一个在 php.ini 中添加它的请求:
session_save_path("your home directory path"/phpsessions);
并在我的路径中创建一个 phpsessions 文件夹。
我做到了,但这没有帮助。
我也尝试这样做:
在 index.php 中:
session_start();
if(isset($_REQUEST['lecturer_id']))
{
echo "lecturer_id set";
$_SESSION['lecturer_id'] = $_REQUEST['lecturer_id']; // store session data
}
在 p1.php 中: session_start(); if(!isset($_SESSION['lecturer_id'])) { 退出; }
并且页面总是退出,即未定义会话变量