看板 PHP 關於我們 聯絡資訊
在Dreamweaver中,建立空白的PHP網頁 依網路上的說明,用Dreamweaver建立與Database的連線 ( 從FILES與DATABASES的視窗確立已連線) 我想取MySQL中資料表(w)的值 所以在PHP網頁只寫這二行: <body> <?php $result = mysql_query("SELECT max(S) FROM 'w'"); echo mysql_fetch_assoc($result, 1); ?> </body> 但網頁出現: Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /路徑/index.php on line 13 ( line 13: echo mysql_fetch_assoc($result, 1);) 我在網路上有查詢過,但不是很懂 請問是可以說明一下以及該如何解決? 另外我需要從MySQL的資料表取值做運算 要在PHP設Array或參數存放取出的值 再以這些Array或參數繼續做運算嗎? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.13.187
UniFish:$變數=mysql_fetch_assoc($result); 02/15 00:07
UniFish:$X=$變數["KEY值"]; 02/15 00:08
UniFish:然後$X就可以隨你算 02/15 00:08
yuleen123:這表示 mysql_query 傳回的不是 resource,代表 02/15 06:53
yuleen123:mysql_query 執行時有錯誤發生,你可以用 mysql_error 02/15 06:54
yuleen123:來確認發生什麼錯誤 02/15 06:55
依據兩位大大的建議,我改成如下: <?php $result = mysql_query("SELECT S FROM 'w'"); $sx = mysql_fetch_assoc($result); echo mysql_errno() . ": " . mysql_error(). "\n"; $X = $sx["S"]; ?> 產生的錯誤說明為: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''w'' at line 1 但查過Manual, $result = mysql_query("SELECT S FROM 'w'");的語法應該沒問題 請問各位可否再解釋一下,謝謝 ※ 編輯: Talenius 來自: 122.116.13.187 (02/15 07:38)
coldollsheep:我想答案就是你不應該用單引號包tablename 02/15 10:12
coldollsheep:除了欄位的值之外 都不用亂用單引號 02/15 10:12
coldollsheep:如果你是為了撞上 保留字所加的符號 是` 02/15 10:12
bibo9901:table應該用``包起來: `w` 02/15 11:03
如b大所說應為'w' 若如c大說的 w ,則會出現No Database的錯誤訊息 所以原本的tablename寫法應該沒錯 請問還有什麼可能? ※ 編輯: Talenius 來自: 122.116.13.187 (02/15 19:10)
arrack:`w`才對,`跟'不一樣,另外連線後要先mysql_select_db 02/15 20:21
感謝a大的回應,應該找出問題了 綜合各位的建議,修改如下: <?php $lnk = mysql_connect('localhost', '帳號', '密碼'); mysql_select_db('L', $lnk); $result = mysql_query("SELECT max(S) FROM `w`"); $sx = mysql_fetch_assoc($result); $X = $sx["S"]; echo $X; ?> 以"SELECT max(S) FROM `w`"所取出的值應為數字 但產生是空白的內容 而$X=$變數["KEY值"];中的"KEY值"是指什麼 若是寫成$X = $sx["S"]; KEY值我設為資料表w的S欄 這樣寫法不知道是正確 但這樣產生是空白的網頁 請問各位應怎麼修改? 謝謝 ※ 編輯: Talenius 來自: 122.116.13.187 (02/15 20:48)
yuleen123:改成 select max(S) as S from `w` 02/15 22:38
yuleen123:你沒有給 max(S) 指定欄位名稱, 所以當然抓不出東西來 02/15 22:39
Talenius:感謝y大與各位的解答,謝謝 02/15 22:47