我不知道我是否正确地提出了这个问题,但我措辞得非常谨慎。所以,基本上就是这样。我的本地机器上有两个目录。
/server/core/
和
/server/clients/
"核心"是处理所有数据处理的,这样做是为了如果我需要更新我的应用程序,那么我只需要更新"核心"以及所有"客户"包含和调用功能位于" 核心"将自动更新。我相信这个术语是一个动态网站"。
所以,基本上就是这里的事情......我现在只是开始学习使用非常基本的课程,但是一旦我开始学习,我肯定会改变一些事情。水平。目前在我的核心"我在 login.php
中有以下代码if(canLogin) {
if(!isset($_SESSION)){session_start();};
$_SESSION['email'] = $email;
header('Location: index.php');
}
这将加载' index.php'它位于" 客户端"目录。这就是我如何做到这一点。
以下代码位于/ server / core /
function createIndex($SQLConnection, $SQLConfig, $PDOConnection) {
global $action;
global $days;
if(!isset($_SESSION)){session_start();}
if(empty($_SESSION['email']))
{
createLogin($PDOConnection, $SQLConfig);
}
}
以下代码位于/ server / clients /
<?php
$Configuration = include_once 'inc/Configuration.php';
include_once 'inc/Connection.php';
include_once '/opt/lampp/htdocs/eDashboard2/core/index.php';
createIndex($NormalConnection, $Configuration, $PDOConnection);
?>
在核心上生成Index.php文件,并使用回声中继网站。请忽略多个用于测试的SQL连接,并将其删除。
所以基本上,问题是,会话没有被保存,或者......而是,如果我不得不猜测会话存储在 / server / core / 而不是 / server / clients /
最终结果是始终要求用户登录,而不是像他们在“仅客户端”中那样继续登录网站。这个版本。 ((客户端版本只是一个静态的网站,就像你通常会看到的那样,动态的方法是我自己尝试学习的经验))
如何进行此操作以便为登录的人存储会话。
答案 0 :(得分:1)
使用session_set_cookie_params
将目录设置为父目录:
<?php
$params = session_get_cookie_params();
session_set_cookie_params($params['lifetime'], '/server');
如果您的域的子域之间也必须存在会话,则需要一个额外的参数:
session_set_cookie_params($params['lifetime'], '/server', '.website.com');