2014-10-11 66 views
-1

我想知道数据库中是否存在现有数据,我尝试使用现有的用户名,根据我的编码它应该是“已存在”,但结果是“继续”。你能指出我错在哪里吗?

$query = mysql_query("SELECT * FROM `membership` WHERE `username` = '$username'"); 
if (mysql_num_rows($query) > 0){ 
    echo "exists already"; 
} 
else { 
    echo "proceed"; 
} 
+0

你可以添加一个'如果(!$查询){死(mysql_error ()); }'在你的'$ query = ...'之后? - 除此之外:1)不推荐使用mysql _ * - 函数,可以考虑使用mysqli_ *或PDO。 2)了解mysql注入。 – 2014-10-11 12:51:56

+0

thx,我试过mysqli,它的工作原理。 – steven 2014-10-11 12:58:35

回答

0

这应该工作

$str = "select SQL_CALC_FOUND_ROWS * from table where username=".$your_value; 

$con=db_connect(); 

$result1  = mysql_query($str,$con); 
$str1   = "SELECT FOUND_ROWS() as totalRecord"; 

$result2  = mysql_query($str1,$con); 

$totalRecords = mysql_fetch_array($result2); 



if ($totalRecords[0]>0){ 

echo "exists already"; 
} 
else{echo "proceed";} 

也作为MySQL是depricated尝试使用库MySQLi或PDO ...