PHP登录程序

时间:2014-02-21 07:54:46

标签: php mysql login

我在php中编写一个简单的登录程序。 我得到的是“密码不正确!”。我的代码出了什么问题?我确信我使用的数据库中有一个用户名和密码。     

  $name = $_POST['name'];
  $password = $_POST['password'];  

  if ($name&&$password)
  {
  $connect = mysql_connect("localhost","root","") or die ("Couldn't connect");
  mysql_select_db("motogp") or die ("Couldn't find databank");

  $query = mysql_query("select * from user where login = '$name'")
or die("Query is not right");

  $query2 = mysql_query("select password from user where login = '$name'")
or die("Query is not right");

  echo $query;
  echo $query2;


  $numrows = mysql_num_rows($query);


     if($numrows != 0)
      {
         if($query2==$password)
         {
          echo "You are in";
         }
         else 
         {
          echo ("Password incorrect!");
         }
      }
    else
      {
      echo ("Login not right");
      }
  }
  else 
  {
      die ("PLEASE!!! Enter username and password!");
  }
?>

2 个答案:

答案 0 :(得分:1)

来自PHP.NET

resource mysql_query ( string $query [, resource $link_identifier = NULL ] )

表示mysql_query是返回资源。你不能只是将资源与字符串($password)进行比较,不是吗?

您需要先调用mysql_fetch_(row | array | assoc)。

答案 1 :(得分:0)

使用这个

<?php 
  $name = $_POST['name'];
  $password = $_POST['password'];  

  if (!empty($name) && !empty($password))
  {
  $connect = mysql_connect("localhost","root","") or die ("Couldn't connect");
  mysql_select_db("motogp") or die ("Couldn't find databank");

  $query = mysql_query("select * from user where login = '$name' and password='$password'")or die("Query is not right");

  $numrows = mysql_num_rows($query);


     if($numrows != 0)
      {

          echo "You are in";   
      }
    else
      {
      echo ("Login not right");
      }
  }
  else 
  {
      die ("PLEASE!!! Enter username and password!");
  }
?>