就是说,我在登录页面登录后,session已经被注册了,这时点击一些连接时,地址栏中会将PHPSESSID一起传递过去(即HTTP://... .../XXX.PHP?PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX),但有时却不可以,尤其是在第二次点击一些连接时,地址栏中为HTTP://... .../XXX.PHP,并没有将PHPSESSID传递过去,以致在下一个页面中无法使用SESSION.这是怎么回事啊?

解决方案 »

  1.   

    另外,SESSION的传递是自动的,我并没有做什么操作.
    在最后一个页面SESSION失效的情况下,我手动将?PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX加入到地址栏中(即变为HTTP://... .../XXX.PHP?PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX),重新连接时,SESSION却到了.
      

  2.   

    我觉得不用传递 session 应为他已经注册到服务器了,可以在各个页面间传递。不用地址栏传了吧?
      

  3.   

    php.ini中已经是 session.use_cookies = 1 cookie 应该是已经开启了我的问题和一位朋友的差不多,先将他的程序写出:test111.php<?
    ##################test111.php#########################
    session_start(); 
    $userid="abc";
    $passwd="123"; 
    session_register("userid"); 
    session_register("passwd"); 
    header(sprintf("Location: %s", "test222.php"));
    ?>test222.php<?
    ##################test111.php#########################
    session_start();
    echo $userid;
    echo $passwd;
    ?>结果,没有输出
    我将test111.php做了一下修改:<?
    ##################test111.php#########################
    session_start(); 
    $userid="abc";
    $passwd="123"; 
    session_register("userid"); 
    session_register("passwd"); 
    echo "<a href=test222.php>test222.php</a>";
    ?>这时,正常输出.我的情况类似于此,不知道为什么??
      

  4.   

    <?
    ##################test111.php#########################
    session_start();
    echo $_SESSION['userid'];
    echo $_SESSION['passwd'];?>
    他那个的解决办法是
      

  5.   

    HTTP://... .../XXX.PHP?PHPSESSID=XXXXXXXXXXXXXXXXXXXXXXXXXX
    你说的这个可能是你的用?了吧.
    你的代码给给出这一部分的吗?看看.
      

  6.   

    PHP有自动加sessid的功能,不过,那要看你的PHP是怎么编译的了.建议你可以这样:
    <?
    ##################test111.php#########################
    session_start(); 
    $userid="abc";
    $passwd="123"; 
    session_register("userid"); 
    session_register("passwd"); 
    ?>
    <a href="test222.php?<?=SID?>">test222.php?</a>";
      

  7.   

    php有自动加sessid的功能吗?可是问题就在于test111.php中的最后一句:情况一,
    header(sprintf("Location: %s", "test222.php"));
    sessionid没有传过去(从地址栏中可以看出)
    没有输出情况二,
    echo "<a href=test222.php>test222.php</a>";
    sessionid传过去了(从地址栏中可以看出)
    可是输出