还有一个现象:
我在session_start();前或后面放入一段:setcookie('cook_user_stamp',time(),time()+31563000);之后,就会出现那样的问题!而不放的话则无法logout了!

解决方案 »

  1.   

    这句话,你注意到了吗?If you want your script to work regardless of register_globals, you need to instead use the $_SESSION array as $_SESSION entries are automatically registered. If your script uses session_register(), it will not work in environments where the PHP directive register_globals is disabled. 
      

  2.   

    意思是:
    "用$_SESSION['user_name']来代替session_register('user_name'),这样可以自动注册一个全局的变量,而使脚本正常工作避免出现不能使用变量的情况;"
    吗?
      

  3.   

    我用了一下不太好用!总有问题,把源码帖下,帮忙看看,各位也提点意见!谢谢:
    <?php
    //用户登陆处理文件login.php
    Session_Start(); 
    Session_Register('user_name');
    Session_Register('user_pwd');
    include('include/fun4.php');
    if($action=='logout'){
    session_unset('user_name');
    session_unset('user_pwd');
    session_destroy();
    echo"已经处于退出状态!";
    }
    elseif($action=='login'){
    require('include/conn.inc.php');
    if($user!=""&&$pwd!=""){
    $query="select * from $LOG_CHECK_TABLE where username='$user'";
    $result=mysql_query($query) or die(mysql_error());
    $data=mysql_fetch_array($result);
    if($data['password']==$pwd){
    $user_pwd=$pwd;
    $user_name=$user;
    echo"成功登陆!".$user_name." and ".$user_pwd;
    }else{echo " 用户名或密码有误,请重新认真填写!";}
    }else{echo"您还没有输入用户名和密码!";}
    }else{echo"请选择您的行为,登陆/退出!";}
    auto_jump('index.php');
    ?>
      

  4.   

    还有就是,我使用setcookie('cook_user_stamp',time(),time()+31563000);的话对session的使用会产生什么样的影响呢?
      

  5.   

    Session_Register('user_name');
    换成:$_SESSION['username'] = $user_name把
    session_unset('user_pwd');
    换成:unset($_SESSION['user_pwd'])你用的那个,需要register_globals onsession和cookie的关系,你不用研究拉,与你的问题没有关系的。
      

  6.   

    PHP Version 4.3.5 的!
      

  7.   

    session和cookies之间应该是没有什么影响,不过有的代码用
      

  8.   

    那就用$_SESSION啦
    session和cookie的关系,主要是session地实现
      

  9.   

    谢啦,luodonghua(庙街卖碟的阿三) !有问题再Call你!
    问题产生的原因是使用了旧版的session函数——session_register
    在PHP 4.2.3以后不要再使用session函数库,而将对session的操作由使用session函数改为对$_SESSION数组的操作。其实这要比用session函数要简单多了。
    再表感谢!(我还不懂怎么散分呢,不好意思了,下次一定散!)
      

  10.   

    session.cache_limiter = nocache
    设置成这样怎么样,会不会影响session变量在页面间的传递?
      

  11.   

    问题还没有解决啊!
    我改过$_SESSION[],写了个小测试,但还是不能在页面间传递!烦啦:-(
    不过我估计程序的问题应该是没有,很简单的程序嘛!
    开始用session_register()注册的全局变量在ses_...文件中有记录,跟改过来的现象一样!