本帖最后由 cqheshuang 于 2010-07-31 13:47:12 编辑

解决方案 »

  1.   


           function ckcookie($user,$password)
              {                      $rs=mysql_fetch_array(mysql_query("select * from user")) or die(mysql_error());//sql中 的where条件呢????????????
                          if($user == $rs[name] && $password == $rs[password])
                             { 
                                echo "<script>alert('Login Success!');location.href='a_index.php';</script>";
                             }
                          else
                            {
                                echo "<script>alert('Login Bad!');location.href='index.php';</script>";
                                exit;
                            }          }
      

  2.   

           function ckcookie($user,$password)
              {                      $rs=mysql_fetch_array(mysql_query("select * from user")) or die(mysql_error());//'select * from user where username = "$user" and password = '"'.md5($password).'"'    
                          if($user == $rs[name] && $password == $rs[password])
                             { 
                                echo "<script>alert('Login Success!');location.href='a_index.php';</script>";
                             }
                          else
                            {
                                echo "<script>alert('Login Bad!');location.href='index.php';</script>";
                                exit;
                            }          }
      

  3.   

    浏览器是否把cookie 禁用了呢?
      

  4.   

    没有我测试过了。。但是要刷两次才能出现正常COOKIE值
      

  5.   

    if(($user == $rs[name]) && ($password == $rs[password]))应该这样的
      

  6.   


    cookie本来就应该是第二次开始才生效的
      

  7.   

    首先在你登陆的时候:
     function post()
               {
                   if(isset($_POST['user']) && isset($_POST['password']))
                      {  
                           $user = $_POST['user'];
                           $password = $_POST['password'];
                           $rs=mysql_fetch_array(mysql_query("select * from user")) or die(mysql_error());
                           if($rs[name] === $user && $rs[password] === md5($password))
                              {
                                                              setcookie("user",$user,time()*24*60*60);
                    setcookie("password",md5(trim($password)),time()*24*60*60);
    echo $_COOKIE['user'].'-'.$_COOKIE['password'];exit;//这块输出下看看是否成功了 
                                     info("Login Success!",'a_index.php');
                          
                              }else{
                                     info("Login Bad!",'index.php');
                            }
                      }
               }
      

  8.   

    出现这两个错误:
    <form name="login" action="
    Warning: Cannot modify header information - headers already sent by (output started at C:\wwwroot\cf\admin\index.php:11) in C:\wwwroot\cf\appl\model\checklogin.php on line 17Warning: Cannot modify header information - headers already sent by (output started at C:\wwwroot\cf\admin\index.php:11) in C:\wwwroot\cf\appl\model\checklogin.php on line 18
    -
      

  9.   

    这是info方法里header的错误,请在页面最前面进行ob_start();或者将相应的错误修改(总之在header之前不能有任何输出)
      

  10.   

    header语句之前,不能出现echo,print等输出语句
    也不能出现HTML页面的输出。
      

  11.   

    也不能有错误警告notice之类的,除非你将它们屏蔽了,不然也算输出
      

  12.   

    我都看了啊没有啊。。就KYZY你给我的那个加上去exit就不行我checklogin.php前面都没有用HEADER和什么啊?
    就一个类,下面就是function...这个页面也没有调用其它页面了
      

  13.   

    我都看了啊没有啊。。就KYZY你给我的那个加上去exit就不行我checklogin.php前面都没有用HEADER和什么啊?
    就一个类,下面就是function...这个页面也没有调用其它页面了
      

  14.   

    我都看了啊没有啊。。就KYZY你给我的那个加上去exit就不行我checklogin.php前面都没有用HEADER和什么啊?
    就一个类,下面就是function...这个页面也没有调用其它页面了
      

  15.   

    你的代码没有贴全吧?
    我都没看header语句在哪里。
      

  16.   

    你是不是把PHP文件保存成了带BOM头的UTF-8文件了????
    是的话,要把BOM头取消了,不要保存带头的文件.
        function post()
               {
                   if(isset($_POST['user']) && isset($_POST['password']))
                      {  
                           $user = $_POST['user'];
                           $password = $_POST['password'];
                           $rs=mysql_fetch_array(mysql_query("select * from `user` where `name` = '$user'")) or die(mysql_error());
                           if($rs['password'] == md5($password))
                              {
                                   setcookie("user",$user,time()+24*60*60);//设置cookie时效,是当前时间加上时效时间,你的是用的*号,应该为+
                                   setcookie("password",md5(trim($password)),time()+24*60*60);
                                   info("Login Success!",'a_index.php');
                          
                              }else{
                                   info("Login Bad!",'index.php');
                            }
                      }
               }        /**
             * 判断是否获取COOKIE
             */
            function ckcookie($user,$password)
              {                      $rs=mysql_fetch_array(mysql_query("select * from `user` where `name` = '$user'")) or die(mysql_error());
                           if($rs['password'] == md5($password))
                             { 
                                echo "<script>alert('Login Success!');location.href='a_index.php';</script>";
                             }
                          else
                            {
                                echo "<script>alert('Login Bad!');location.href='index.php';</script>";
                                exit;
                            }          }
      

  17.   

    没有看到 CheckLogin::cksession 方法
    也没有看到你在哪里设置了 cookie
      

  18.   

    setcookie用完了要刷新一下的。echo "<script language=\"javascript\">location.href='login.php';</script>";