用CI写的腾讯登陆,需要存贮openId以及accessToken,
用Ajaxvar 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 encounteredSeverity: NoticeMessage: Undefined index: openIdFilename: controllers/ShopOnSale.phpLine Number: 125查看过 php.ini 文件 没有问题 在另个页面<html>标签前写了也没有用<?php 
session_id('openId');
session_start();
?>

解决方案 »

  1.   

    if(isset($_GET['openId']))
    $_SESSION['openId'] = $_GET['openId'];
      

  2.   

    不好意思,刚吃完饭回来! 
    可以在设置SESSION的控制力获取到$_GET['openId'],
    变量已经设置了 
      

  3.   

    在控制器内 可以$_GET['']得到值,但是放进SESSION中,无法跟随页面跳转,丢失..
      

  4.   

    PHP session 失效不传递的解决办法
    PHP中,session不能传递到下一个页面去,一般情况:在配置文件php.ini里把session.use_trans_sid的值改成1。试过改成1  然后重启apache ..但是还是无效 .. 
      

  5.   

    两个页面都需要开启session_start(); ,你做了吗?
      

  6.   

    我的页面时这样写的,\ 网站头部 + 内容A + 网站底部
    然后跳转的页面是
     网站头部 + 内容B + 网站底部在头部写了 session_start(); 这样应该不会有影响的吧
      

  7.   

    在SaveInfo/save_qq_openId控制器下 $_SESSION['openId'] = $_GET['openId'];
    那么你在他之前 session_start() 了吗?又,
    session_id('openId');
    session_start();
    是错误的,请去掉
      

  8.   

     之前已经 session_start() 了,
    为什么session_id()是错误的呢?
      

  9.   


    如果在session_start();之前加代码session_id($session id);
    将不产生新的session文件,直接读取与这个id对应的session文件。
      

  10.   

    注意COOKIE的domain,是否跨二级域名使用。
      

  11.   

    解决了,用<form action="xxx">已经action了页面,然后,ajax传递的页面无法收到数据.测试的时候,用的<button>测试,ajax传数据成功!再次感谢各位的提点,学习到了.