欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP SESSION失效有关问题 !

程序员文章站 2024-01-15 17:54:46
...
PHP SESSION失效问题 !!!
用CI写的腾讯登陆,需要存贮openId以及accessToken,
用Ajax
JScript code

var xmlhttp;
            if (window.XMLHttpRequest)
            {// code for IE7+, Firefox, Chrome, Opera, Safari
              xmlhttp=new XMLHttpRequest();
            }
            else
            {// code for IE6, IE5
              xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange=function()
              {
              if (xmlhttp.readyState==4 && xmlhttp.status==200)
                {
                        document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
                }
              } 

             
            if(QC.Login.check())/*QQ 登录*/
            {
                    
                    QC.Login.getMe(function(openId, accessToken){
                            xmlhttp.open("GET","http://localhost/CI/index.php/SaveInfo/save_qq_openId?openId="+openId+"&accessToken="+accessToken,true);
                            xmlhttp.send();
                    });                        
            }




在SaveInfo/save_qq_openId控制器下 $_SESSION['openId'] = $_GET['openId'];

然后页面跳转到另一个控制器 echo $_SESSION['openId'];

错误提示 :
A PHP Error was encountered

Severity: Notice

Message: Undefined index: openId

Filename: controllers/ShopOnSale.php

Line Number: 125

查看过 php.ini 文件 没有问题

在另个页面标签前写了也没有用
PHP code




------解决方案--------------------
if(isset($_GET['openId']))
$_SESSION['openId'] = $_GET['openId'];
------解决方案--------------------
两个页面都需要开启session_start(); ,你做了吗?

------解决方案--------------------
在SaveInfo/save_qq_openId控制器下 $_SESSION['openId'] = $_GET['openId'];
那么你在他之前 session_start() 了吗?

又,
session_id('openId');
session_start();
是错误的,请去掉
------解决方案--------------------
注意COOKIE的domain,是否跨二级域名使用。
PHP SESSION失效有关问题 !

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频