我在codeigniter中建立了一个项目,并且我设置了CI会话,其中包含关键的USER和值' ABCD'。
$this->load->library('session');
$this->session->set_userdata('USER','ABCD');
现在我在应用程序目录之外添加了一些本机PHP代码,并且从那里我必须更新具有关键USER的会话数据值' XYZ&# 39;
我无法更改CI中使用的会话,因为它在许多页面中实现。我只能更改为本机PHP代码。
我还尝试使用curl来创建这样的函数来通过CI更新会话并在我的控制器中创建一个函数setcisession()
function setcises($key,$val)
{
$cSession = curl_init();
curl_setopt($cSession,CURLOPT_URL,"http://www.example.com/controller/setcisession/$key/$val");
curl_setopt($cSession,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cSession,CURLOPT_HEADER, false);
$result=curl_exec($cSession);
curl_close($cSession);
}
我在Controller中设置会话的功能
function setcisession($key,$value)
{
$this->load->library('session');
$this->session->set_userdata($key,$value);
}
但不是运气我也试过
exec("wget --spider www.example.com/home/setcisession/$key/$val");
已编辑:实际上,当用户使用key-USER登录网络时,我会创建CI会话,并存储许多地方网站使用的emailid。 我在codeigniter应用程序(在核心php)目录之外编写了社交登录代码,并且喜欢将从社交登录返回的电子邮件ID分配给CI SESSION Key - ' USER' 这样网站就可以识别用户中的logedd
我知道我可以通过在CI
中实现社交登录代码来实现这一目标但是我想知道如何从驻留在codeigniter应用程序目录之外的核心php代码设置CI会话