网页开始的确时候是否使用session_start();
记得把PHP.ini里面的
register_globals=Off
改为
register_globals=On试试

解决方案 »

  1.   

    同意,在target=_blank的窗口是否 session_start().
      

  2.   

    记得在使用session的页面第一行使用session_start()
      

  3.   

    我用了,用当前窗口访问时session是没有问题的,用新窗口打开才有问题。
    我判断登录的语句是:
    session_start();
    if (!session_is_registered("LogUser")||$LogUser=="")
    {
    header("Location: go_login.php?url4go=list_video.php");//跳转提示没登录
    }
      

  4.   

    看看php.ini配置的session.auto_start=0改也session.auto_start=1,试试,为这个我苦了一个月说不就是这个问题!
      

  5.   


    为了保证代码的通用性,尽量使用php.ini的默认配置.session_start();
    if (!session_is_registered("LogUser")||$_GET['LogUser']=="")
    {
    header("Location: go_login.php?url4go=list_video.php");//跳转提示没登录
    }
      

  6.   

    http://expert.csdn.net/Expert/topic/1174/1174791.xml
      

  7.   

    解决办法非常简单。问题出现的原因:
    当一个用户访问你的某一网页,服务器自动为这个用户配置一个唯一的 session id。
    不同页面之间的 SESSION变量 的传递是在这个唯一的 session id 的基础上进行的。
    当打开一个新页面时,服务器会自动为这个用户配置另一个唯一的 session id。
    因此,如果想要保持你的原来页面中的 SESSION变量 的传递,要通过 url 来传递那个
    唯一的 session id。具体解决办法实现如下:
    假如你原来在登录页面(logon.php)中的连接是这样的:
    <?php
    print "<a href=aa.php>链接</a>";
    ?>
    在本窗口打开没问题。如果想在新页面里打开,而同时也希望传递老页面里的 SESSION变量,
    要在连接页面 url 后面加上这个 session id:<?php
    print "<a href=aa.php?$a=".session_id()." target=_blank>链接</a>";
    ?>好了,解决了:)
      

  8.   

    再啰嗦一句:当然,youbest 所说的也是可以解决问题的。不过既然这个问题可以绕开 register_globals 来解决,为了系统安全起见,还是把 php 配置参数 register_globals 设为 off 的好:)
    php4.2 新安装后的 register_globals 缺省设为 off 是有道理的。
      

  9.   

    to azhilaoa:
    还是不行,我的链接变成了下面这个了:
    http://ming/hx/list_video.php?LogUser=b63daad1e13a3c743fa282b2f694d2fe
    在list_video.php里的判断句是:
    if (!session_is_registered("LogUser"))//用户没有登录;急,请帮我搞定!
      

  10.   

    已经是:session.auto_start=1
    肯定用了:session_start()……不然就用不了session了问题还没解决!
      

  11.   

    <?php
    echo  "<a href=aa.php?$a=".$LogUser." target=_blank>链接</a>";
    ?>
      

  12.   

    logon.php页:
    <?php
    session_start(); //初始化一个session 
    $_SESSION['LogUser']="True"; 
    echo "<a href=aa.php?$a=".session_id()." target=_blank>新窗口链接</a>";
    ?>aa.php页:
    <?php
    session_start(); //初始化一个session 
    $LogUser=$_SESSION['LogUser'];
    print "\$LogUser=".$LogUser;//显示传递过来的变量 
    ?>
      

  13.   

    你再用缺省值试试:register_globals=Off
    session.auto_start=0:)
      

  14.   

    哦,用你的语句试试:aa.php页:
    <?php
    session_start();
    if (!session_is_registered("LogUser")) print "用户没有登录";
    else print "欢迎!";
    ?>:)
      

  15.   

    azhilaoa:先谢谢你了!
    我全都试过,还是不行。真的非常感谢!
      

  16.   


    你的 php 什么版本?Web Server 是什么?Windows?Linux?
    你把代码拷贝下来,一个字别改,运行,还不行?
      

  17.   

    open your php.iniset session.auto_start = on