情况是这样的,我写了个用户登录页面,前台登陆页 login.php  后台处理页login2.php
用户在前台输入用户名和密码,第一次能登陆,登陆之后再退出来,然后再次登陆的话却出问题了,用户名和密码都对了,后台验证用户密码都正确提示登录成功,但是马上又退出来了,因为$username=$_COOKIE["username"]为空,这是怎么回事呢?第一次登陆的话设置cookie如下:
setcookie("username",$username,time()+3600,"/");后台文件是先验证用户名和密码是否匹配,匹配的话就提示登录成功,然后获取$username=$_COOKIE["username"],获取到了就显示该用户的信息第一次登录是可以的,但是退出之后再次登陆的话$username=$_COOKIE["username"]获取的$username为空

解决方案 »

  1.   

    大半夜的...按说是不会出问题的正常的流程 登录时去匹配用户名和密码,匹配成功写cookie,而非去读.需要显示是否登录的地方调用这个$_COOKIE["username"]来验证是否登录  你看看流程对不?
      

  2.   

    这个是用print_r($_COOKIE)输出的内容
    Array
    (
        [username] => 
        [lasttime] => 
        [Hm_lvt_40766697e0a5e9d980159040fbbbbea4] => 1375276361,1375276748,1375276810,1375284629
        [Hm_lpvt_40766697e0a5e9d980159040fbbbbea4] => 1375286309
        [username1] => fengfei
        [lasttime1] => 1375354872
        [bdshare_firstime] => 1375275427220
        [fip] => visited
    )这个是用:javascript:alert(document.cookie)弹出的cookie
      

  3.   

    你这个username1 有东西...不如你贴出你的代码看看....因为正常来说是不会出问题的所以没看出来你的问题在哪里,大半夜没有高手在我们来慢慢分析你的原因吧...
      

  4.   

    改用 var_dump($_COOKIE) 看一下
    因为用 parint_r 看到的 username 是空的,但是 setcookie("username",$username,time()+3600,"/"); 中 $username 为空的话,就是删除 username 项。那么就不会再看到 username 项了