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

[已解决] redirect 跳转页面为什么会无效 session也是

[复制链接]
发表于 2011-1-10 15:43:33 | 显示全部楼层 |阅读模式
php codeigniter框架中 redirect 跳转页面为什么会无效当前的页面能获取到$this->session->userdata("name"),然后我用js跳转过去后 $this->session->userdata("name")的值就获取不到了!本地机测试是正常的,可上传到服务器上就这样了。!为什么呢?出错页一片空白
发表于 2011-1-10 15:58:29 | 显示全部楼层
这个跟CI无关的吧,想办法打开错误提示看看是哪里错了
 楼主| 发表于 2011-1-10 17:21:24 | 显示全部楼层
这情况错误提示怎么做,输出截断还是行的啊!$this->session->userdata("name")在无法跳转的页面中还是能正确输出的!有什么测试工具没!还是服务器上的php配置有问题呢?本地机制作时一切都是正常的!
发表于 2011-1-11 00:54:17 | 显示全部楼层
上代码。。。。。
 楼主| 发表于 2011-1-11 09:53:57 | 显示全部楼层
function __construct()
        {
                parent::Controller();
            $this->load->helper(array('url','html','form'));
                $this->load->library('form_validation');
                $this->load->library('pagination');
                $this->load->library('session');
                $this->load->model('Mwww','',TRUE);
                $this->title = $this->config->item('WebTitle');
        }
function UserLogin()//表单中心--登录判定
        {
                $data['title'] = $this->title;
               
                $SendSite=$this->input->post('SendSite',true);
                if($SendSite!=720){
                        $SendSite=1;
                }
                $UserName=$this->input->post('MemberUser',true);
                $UserPwd=$this->input->post('MemberPwd',true);
                $V_Check="";
                $query=$this->Mwww->checkUserAndPwd($UserName,md5($UserPwd));
               
                if($query->num_rows()>0){
                        $UserName="";
                        $ZhenName="";
                        $V_Id="";
                        $V_EndTime="";                       
                        foreach ($query->result() as $row)
                        {
                                $UserName=$row->U_Name;
                                $ZhenName=$row->U_RealName;
                                $Departments=$row->U_Departments;
                                $V_Id=$row->U_Id;
                                $V_EndTime=$row->U_LastLoginTime;
                        }

                        $userdata = array(
                           'VipUser'=>$UserName,
                           'VipName'=>$ZhenName,
                           'VipId'=>$V_Id,
                           'Departments'=>$Departments,
                           'BeginTime'=>$V_EndTime,
                           'SendSite'=>$SendSite,
                           'logged_in'=>TRUE
                                );
                       
                        $this->session->set_userdata($userdata);
                        $this->Mwww->updateVipDate($V_Id);

                        redirect('sqxx');
                }else{
                        redirect('sqxx');//用户名或密码错误跳转
                }
        }

在公司服务器上测OK的,上传到服务器商哪就不行了!
发表于 2011-1-11 10:58:25 | 显示全部楼层
我觉得我和你的问题一样,在自己的电脑下的服务器测试ok。上传到GoDaddy就不行。

我的是,虽然login了完成了,但是在换个页面,session仿佛被destroy了一样,没有了。奇怪的是,这样的情况发生在有的浏览器下,而不是其他的浏览器。
发表于 2011-1-11 13:05:37 | 显示全部楼层
建议使用我发布的 Session 类。
CI 使用 Cookie 保存 Session,这样可能会给你造成困扰,如果有问题就换我发布的 Session 类库。
发表于 2011-1-11 13:54:33 | 显示全部楼层
楼上的老大,您发布的session类在哪儿?如何安装?
发表于 2011-1-11 13:57:21 | 显示全部楼层
发表于 2011-2-5 16:14:42 | 显示全部楼层
我也遇到同样问题,换了hex大佬的类也是一样!WAMP环境。。。

本版积分规则