2012-03-07 69 views
0

可能重複:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given inPHP mysql_fetch_assoc錯誤 - 參數要求是一個布爾錯誤查詢

我正在爲我的高級班的一個項目,我們的首席程序員剛及格現在我是唯一的程序員。他使用PHP,我幾乎沒有編程經驗。該計劃一直踢回這個錯誤...

mysql_fetch_assoc()預計參數1是資源,給出(點線路33的引擎收錄文件)布爾

http://pastebin.com/nfv9P2h5

如果你們能幫助我會非常感激......我似乎無法弄清楚這一點。

感謝,

彌敦道

更新:我跑了回聲mysql_error標誌,它想出了一個錯誤行58是

if($rows == ''){ 
+0

你有一些問題與SQL查詢。你需要檢查$結果。如果它是錯誤的,你需要打印mysql_error()來查看錯誤。 – Cfreak 2012-03-07 04:51:18

回答

0
mysql_fetch_assoc() expects parameter 1 to be resource, boolean given 

這個錯誤幾乎總是指向失敗的SQL查詢,這通常是一個語法問題。我正在查看你的代碼,但我建議你仔細檢查你的查詢語法。

mysql_query返回一個resource完成一個成功的查詢,或false如果查詢失敗。您的查詢失敗,因此,您將虛假傳遞給mysql_fetch_assoc(),因此該錯誤爲resource

你可以(應該?)做這種方式

$result = mysql_query($query); 
if (!$result) 
    echo mysql_error(); 
else 
    //do your stuff here 

如果你不能眼睛球在你的查詢錯誤,請使用上面的代碼片斷。 mysql_error()會報告錯誤,所以你知道你錯在哪裏。或者,在IDE(例如MySQL Workbench)中運行查詢以調試查詢。

+0

我真的很感激!我現在也在看。 – user1253828 2012-03-07 04:52:50

+0

謝謝,我將嘗試Jon發佈的內容,如果沒有任何工作仍然存在,我將使用此方法來查看它是否有助於縮小範圍。 – user1253828 2012-03-07 04:59:01

+0

我已經取得了一些進展......在這裏放置錯誤代碼後,他們告訴我。 注意:未定義變量:用C行:\ XAMPP \ htdocs中\ report.php線60上 說明:未定義變量:行中C:\ XAMPP \ htdocs中\ report.php第65行 – user1253828 2012-03-07 05:13:46

0

這意味着您的查詢沒有返回任何結果(問題出在SQL中,而不是PHP中)。這可能是一個語法錯誤,但我沒有立即看到一個。

嘗試用這種替代$query

SELECT * 
FROM counterdata 

(如你在你的數據庫中的一些數據,只要)這是保證返回的東西,而應該工作,如果沒有別的是錯誤的。

然後,嘗試再慢慢加入SQL的部分查詢,像這樣:

// Next Step: 
SELECT SensorName, SUM(CountA) AS Traffic, StartDate, EndDate 
FROM counterdata 

// Then Try: 
SELECT SensorName, SUM(CountA) AS Traffic, StartDate, EndDate 
FROM counterdata 
WHERE StartDate >= '{$yesterdayTimestamp}' 

// And Lastly: 
SELECT SensorName, SUM(CountA) AS Traffic, StartDate, EndDate 
FROM counterdata 
WHERE StartDate >= '{$yesterdayTimestamp}' 
GROUP BY StartDate, SensorName 

這會告訴你哪裏的錯誤 - 如果有的話 - 在你的SQL。否則,它應該工作。

如果這些都不起作用,那麼PHP中的某些內容是錯誤的,但是當我看到它時我沒有看到任何錯誤。

+0

這非常有用,我非常感謝它,我現在會嘗試這些東西! – user1253828 2012-03-07 04:58:41

相關問題