2014-01-29 98 views
-5
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in N:\ftp\compc\d10cn\Project\login1.php on line 51 
The username you entered was not found. 

^^這是我不斷收到的錯誤,有沒有人知道這意味着什麼?或者什麼是錯線51,它是:PHP的Mysql登錄問題

$query = mysql_query ("SELECT * FROM users WHERE username = '$user'"); 

$numrows = mysql_num_rows($query); 
if ($numrows == 1){ 
+1

可以請你給你完整的代碼 –

+0

即使世界mysql_query中的括號() – codeaddict

+0

之間的空間這可能是因爲你的'$ query'被設置爲false,這意味着你的查詢有錯誤或可能的空間函數調用'mysql_query()'之間。 'mysql_num_rows($ query);''因爲你傳遞'false(BOOLEAN)'作爲參數而拋出錯誤。另外,你應該首先避免使用'mysql'函數 - 使用'mysqli'或'PDO'。 – sbeliv01

回答

1

請把它傳遞給mysql_fetch_array之前嘗試像這樣

<?php 
    $link = mysql_connect("host", "username", "password"); 
    mysql_select_db("database", $link); 

    $result = mysql_query("SELECT * FROM users WHERE username = '$user'", $link); 
    $num_rows = mysql_num_rows($result); 
    echo $num_rows 

    ?> 
1

檢查$query。你會發現它是false,因爲查詢失敗。請參閱[mysql_query] [1]文檔以獲取可能的返回值以及如何處理這些值的建議。

$query = mysql_query("SELECT * FROM users WHERE username = '$user'"); 

if($query === FALSE) { 
    die(mysql_error()); // TODO: better error handling 
} 

$numrows = mysql_num_rows($query); 
if ($numrows == 1){ 
+0

謝謝你擺脫了錯誤,雖然它不會識別我的用戶名存儲在數據庫中???我已經發布我的代碼上面 – Niamh2

+0

它會!但結果正在'$ result'中檢索,現在請確保您使用的是正確的變量 –

+0

Anyways @ Niamh2我更新了與您的代碼變量匹配的答案。現在就試試 –