检查用户名和密码

时间:2012-06-08 11:47:45

标签: php sql

我想检查我的数据库中是否存在用户名和密码,但是我的代码有问题,我找不到它。

$result=mysql_query("SELECT C_ID FROM customer WHERE C_NNAME ='".$_POST['username']."' AND C_PASS = '".$_POST['pass']."'");

if($result=='FALSE'){
    $word .= select_key('keyword', 'K_ID', 'password');
}
else 
{
    $word.= select_key('keyword', 'K_ID', 'Please Complete Feilds');    
}

3 个答案:

答案 0 :(得分:2)

除了您的SQL注入问题之外,您使用的是超级全局数组$_POST错误(因为您将其命名为$post)。

尝试使用正确的超全局变量名称 - 并使用Google进行SQL注入。

答案 1 :(得分:1)

$name = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['pass']);
$result = mysql_query("SELECT C_ID FROM customer WHERE C_NNAME ='$name' AND C_PASS = '$password'");

if(mysql_num_rows($result) > 0) {
   // There's a match
} else {
   // There's no match
}

另外请不要使用mysql_函数使用mysqli_或存储过程。 该代码对于sql注入是不安全的,在公共网站上使用它不是一个好主意。

答案 2 :(得分:0)

您需要使用mysql_num_rows来确定是否有任何结果。