【发布时间】:2013-12-18 14:50:50
【问题描述】:
我已经实现了记住我这个问题的功能
How to create "remember me checkbox" using Codeigniter session library?
第一个答案。 我创建了一个以随机数代码为值的 cookie,并将其存储在 db(用户表)中。登录时,数据库代码检查 cookie 值。它在我的本地主机服务器上工作正常。但是在具有子域 url 的实时服务器中存在问题。我还用另一台以 ip 地址作为 url 的服务器对其进行了测试。那里也行不通。在这两种情况下,cookie 创建但无法读取 cookie。请帮帮我。
cookie 设置者
$auto_login_hash_code = uniqid();
$domain = $_SERVER['SERVER_NAME'];
$cookie = array(
'name' => 'rememberMe',
'value' => $auto_login_hash_code,
'expire' => 31536000,
'domain' => $domain,
'path' => '/'
);
$this->input->set_cookie($cookie);
并通过
读取cookie if (get_cookie('rememberMe')) {
$hashcode = $this->CI->input->cookie('rememberMe');
$this->CI->load->model('loginmodel', '', true);
$username = $this->CI->loginmodel->get_username_by_hashcode($hashcode);//in this function setting session variables
}
提前致谢 iijb
【问题讨论】:
-
如果您显示您的代码会很有帮助...!
-
您是否尝试在 cookie 的
domain键前添加句点? -
我相信你不能用一个域设置一个 cookie 并用另一个域读取它,如果这就是你想要做的......
-
没有在同一台服务器上完成所有事情
标签: codeigniter