台灣最大程式設計社群網站
線上人數
1144
 
會員總數:246135
討論主題:189716
歡迎您免費加入會員
討論區列表 >> PHP >> 我遇到一個奇怪的資料庫錯誤訊息
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
我遇到一個奇怪的資料庫錯誤訊息
價值 : 50 QP  點閱數:4693 回應數:15
樓主

紫色幽幻
門外漢
0 35
784 128
發送站內信

以下是我上傳到虛擬伺服器後出線的錯誤訊息,但是我在本機上測試是OK的
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /home/liuqiuec/public_html/index_menu.php on line 85

搜尋相關Tags的文章: [ mysql_fetch_row() ] ,
本篇文章發表於2012-12-14 16:16
1樓
作者回應

紫色幽幻
檢舉此回應
是不是有限定行數,我要貼程式碼貼不上去
本篇文章回覆於2012-12-14 16:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

紫色幽幻
檢舉此回應

錯誤點是在這邊的程式碼
本篇文章回覆於2012-12-14 16:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

小高
檢舉此回應
$row = mysql_fetch_row($result) mysql_fetch_row --- 取得單列結果

樓主你的用意不是要陣列 select 的結果嗎??
如果是那改
$row = mysql_fetch_array($result) mysql_fetch_array --- 取得查詢後的陣列結果

本篇文章回覆於2012-12-14 17:48
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

小高
檢舉此回應
$row = mysql_fetch_array($result),mysql_fetch_array --- 取得查詢後的陣列結果

忘了加逗點
本篇文章回覆於2012-12-14 17:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

紫色幽幻
檢舉此回應
還是出現一樣的錯誤訊息
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /home/liuqiuec/public_html/index_menu.php on line 85
本篇文章回覆於2012-12-14 18:27
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

紫色幽幻
檢舉此回應
這個訊息才對
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/liuqiuec/public_html/index_menu.php on line 85
本篇文章回覆於2012-12-14 18:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

小高
檢舉此回應
突然發現一個有趣的資料表名稱 select * from $ecologytable

資料表名稱 $ecologytable ???
本篇文章回覆於2012-12-15 07:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
不錯的參考

皮皮快跑
檢舉此回應
@小高:
那個叫做「魔術引號」寫法。
也就是將變數寫在『雙引號』(單引號是不行的)內時,會自動判斷他就是一個變數。
不過平常對於是屬於變數的我會用這種寫法:

這樣才好區隔開變數和文字。
再來回主題。
這邊的錯誤訊息就是告訴你沒有RESOURCE。
很可能像是並沒有從資料庫撈出資料,或是資料庫語法錯誤之類的異常。
最後就是關於取出方式的建議。
我完全不建議使用mysql_fetch_row()和mysql_fetch_array()
前者是你得知道你的欄位是第幾個。後者是如果你想發生一次出現二筆相同的資料的話……
我建議是使用mysql_fetch_assoc()或是mysql_fetch_object()
前者是用欄位名稱做為索引值,後者是用物件的屬性名稱做為索引值。
(舉例就是說假設欄位是name,前者就會是$row['name']而後者則是$row->name。)
基本上我會建議原po先判斷一下$result的內容是什麼。
通常資料庫失敗$result就會是false。
本篇文章回覆於2012-12-15 09:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

小高
檢舉此回應
select 變數表

多學一樣,感謝皮大^^
本篇文章回覆於2012-12-16 16:46
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

紫色幽幻
檢舉此回應
我寫法換成皮老大的寫法錯誤訊息就會跟著換(原本:Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in /home/liuqiuec/public_html/index_menu.php on line 85)(變成:Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /home/liuqiuec/public_html/index_menu.php on line 85)
本篇文章回覆於2012-12-17 15:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

蒼鴻
檢舉此回應
可以把錯誤拿去google查詢或者翻譯 就可以大略知道什麼問題了....
本篇文章回覆於2012-12-17 15:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
不錯的參考

皮皮快跑
檢舉此回應
@紫色幽幻:
我已經跟你說過了$result的型態你應該要檢查一下。
如果是false就表示是你的資料庫語法有錯誤導致查詢異常。
如果是resource那應該不可能會有問題。
本篇文章回覆於2012-12-17 19:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
回應

Solty
檢舉此回應
把$str 倒出來...八成踩地雷了
本篇文章回覆於2012-12-18 11:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
14樓
作者回應

紫色幽幻
檢舉此回應
嘗試著echo $result
本機上是顯示出Resource id #4
上傳到空間之後沒顯示出任何東西
本篇文章回覆於2012-12-18 12:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
15樓
最有價值解答

皮皮快跑
檢舉此回應
echo false; <===一定不會顯示任何東西。
在你的主機空間他載不到你要的資料。
是不是要去檢查資料庫連線………之類的問題。
本篇文章回覆於2012-12-18 15:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.