2012-06-17 166 views
0

我有一個MySQL查詢:查詢返回false,而不是資源

mysql_query("SELECT username_usr FROM user_usr WHERE username_usr=$name") 
我存儲在變量 $username_check

。然後我將mysql_fetch_array($username_check)存儲在一個變量中。

當我運行腳本時,出現mysql_fetch_array需要一個資源的錯誤,給定的布爾值;

我必須犯一些簡單的錯誤,但由FSM我找不到它。

+0

使用'MySQLi'或'PDO',因爲'mysql'擴展名已被棄用,並且它的使用正在淡出。 –

回答

1

您的查詢有語法錯誤,而你又回到一個布爾值FALSE:

mysql_query("SELECT username_usr FROM user_usr WHERE username_usr='$name'") 
                    ^-----^--- missing 

永遠不要假設一個查詢成功。總是檢查失敗E的返回值:

$result = mysql_query(...) or die(mysql_error()); 

是你應該始終有的裸露的最小值。

+0

是的,但我認爲它仍然可以解決我的問題,因爲我使用explode()從其他地方獲取名稱,所以我在$ name的前面添加了一個額外的值。 – Xitcod13

+0

在這種情況下它不起作用,但在其他情況下來自$ _GET []的個案變量會返回qoutes。感謝您的幫助,我確實遇到了這個問題 – Xitcod13