用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4469|回复: 3
收起左侧

[HELP] 求助Cookie获取不到啊。。

[复制链接]
发表于 2010-2-23 15:46:55 | 显示全部楼层 |阅读模式
本帖最后由 mylovefly 于 2010-2-23 15:52 编辑

if($this->mMember->CheckLogin($Code_Username, md5($Code_Userpass))) {
                    if($LoginMode == 1) {
                        $user_expire = 60*60*24*30;
                        $pass_expire = 60*60*24*30;
                    } else {
                        $user_expire = 0;
                        $pass_expire = 0;
                    }
                    $user_cookie = array (
                            'name' => 'XSHanusername',
                            'value' => base64_encode(md5($Code_Username)),
                            'expire' => $user_expire,
                            'domain' => '',
                            'path' => '/',
                            'prefix' => '',
                    );
                    set_cookie($user_cookie);
                    $pass_cookie = array (
                            'name' => 'XSHanuserpass',
                            'value' => base64_encode(md5($Code_Userpass)),
                            'expire' => $user_expire,
                            'domain' => '',
                            'path' => '/',
                            'prefix' => '',
                    );
                    set_cookie($pass_cookie);
                    GetAlerts("登陆成功!", '/');
                } else {
                    GetAlerts("用户名和密码无效!", $_SERVER["HTTP_REFERER"]);
                }


用firefox也能看到cookie保存成功了。
未命名.jpg

但是用
echo get_cookie('XSHanusername');
就是输不出来。。。
而用
echo get_cookie('PHPSESSID');
输出 这个系统默认的Cookie名称就可以正常输出。
。。各位大大帮帮忙看看啊。。
发表于 2010-2-23 17:36:34 | 显示全部楼层
本帖最后由 baiyuxiong 于 2010-2-23 17:38 编辑

试了一下这段代码可以:
PHP复制代码
 
<?php
        class Home extends Controller
        {
                function __construct()
                {
                        parent::controller();
                }
                function index()
                {
                        $this->load->helper('cookie');
                        $Code_Username="username";
                        $user_expire= 0;
                        $user_cookie = array (
                            'name' => 'XSHanusername',
                            'value' => $Code_Username,
                            'expire' => $user_expire,
                            'domain' => '',
                            'path' => '/',
                            'prefix' => '',
                    );
                         set_cookie($user_cookie);
                         echo get_cookie('XSHanusername');
                }
        }
 
复制代码

可能你别的地方有问题。比如XSHanusername的值已经失效什么的
 楼主| 发表于 2010-2-24 09:52:55 | 显示全部楼层
上面的设置只有两种可能啊。。要么关闭流览器失效,,要么长期保存。 。。。。怎么会这么快就失效了呢。。
发表于 2010-2-24 10:02:15 | 显示全部楼层
如果不设置 cookie path 为根目录,不同控制器的不同方法之间不能共享 cookie

本版积分规则