> 백엔드 개발 > PHP 튜토리얼 > PHP SESSION失效有关问题 !

PHP SESSION失效有关问题 !

WBOY
풀어 주다: 2016-06-13 10:35:05
원래의
1078명이 탐색했습니다.

PHP SESSION失效问题 !!!
用CI写的腾讯登陆,需要存贮openId以及accessToken,
用Ajax

JScript code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->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
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php session_id('openId');session_start();?>
로그인 후 복사



------解决方案--------------------
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.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿