2011-04-22 41 views
0

基本上我做了一個登錄腳本,用戶登錄前必須在數據庫中檢查用戶名。所以我需要一個mysql查詢將僅返回與指定用戶名匹配的目標表的記錄數,而不是包含記錄的數組。我試過這個:我需要一個mysql查詢將它返回匹配的行數,而不是與匹配的行數組

$result = mysql_query("SELECT COUNT(*) from usersecurity WHERE Email ='$username'"); 

但顯然它返回的是結果資源而不是int或數值。

回答

3

使用mysql_num_rows就快:

$result = mysql_query("SELECT COUNT(*) from usersecurity WHERE Email ='$username'"); 
$row = mysql_fetch_row($result); 
print($row[0]) //0 or 1, etc 
2

在返回的資源

$result = mysql_query("SELECT * from usersecurity WHERE Email ='$username'"); 
$count = mysql_num_rows($result); 
+0

@colinmarc:Galen提供的示例不使用COUNT() – magma 2011-04-22 18:56:56

+0

它在改變之前做過。我刪除了我的評論,並解開了我的downvote =) – colinmarc 2011-04-22 19:28:53

+0

沒關係,但是如果這個表很大,速度很慢,所以colinmarc提供的方法更好 – chings228 2013-05-24 06:14:13

0

不要忘記你仍然需要這個檢索您的結果

$row = mysql_fetch_row($result) 

$行[0]將是你的整數。

相關問題