2011-07-05 26 views
1

我正在處理一個包含字段「Aprovado」的表(「Item」),它是一個檢查項目是否被批准的整數(1代表是,0代表否) (不是我的表,我會選擇適當的布爾值)。PHP中MySQL中的查詢整數

我知道有項目在那裏,我知道有很多與「Aprovado」設置爲1項(我成功的查詢「SELECT * FROM項目ORDER BY項目ID ASC」)

然而,當我這樣做時:

mysql_select_db($theDatabase, $db) or die("Could not find database."); 
$query = "SELECT * FROM Item WHERE Aprovado = 1"; 
$resultID = mysql_query($query, $db) or die("Data not found."); 

它只是返回「未找到數據」。怎麼了?

+0

我們需要更多的調試。這是否在MySQL客戶端上查詢?同時顯示$ db –

+0

你可以在你的問題中顯示'SHOW CREATE TABLE Item'的輸出嗎? –

+0

你確定有數據的字段值Aprovado = 1,它是一個整數。只需檢查Aprovado ='1' –

回答

3

可以嘗試更改您的模具(...)爲:

模具:;( '無效查詢' mysql_error())。

這會告訴你實際的MySQL錯誤。

+0

感謝+1非常有用(我希望它會)將現在這樣做。 – xfze

+0

標記爲答案,因爲這是允許我發現問題的代碼位(它不在上面的粘貼代碼中,它是在另一個點上......但是當每個死亡都返回「數據未找到」時,我沒有我不知道。)我從現在開始採用顯示實際的錯誤 – xfze

1

如果查詢沒有返回任何數據,mysql_query不返回FALSE。它只在錯誤條件下返回假:

$result = mysql_query($query, $db) or die(mysql_error()); 
if (mysql_num_rows($result) == 0) { 
    die("Data not found"); 
} 
$row = mysql_fetch_assoc($result); 
$resultID = $row['resultID'];