求助:從資料庫中查詢的請求失敗?
新手,第一次做新聞發布,在新聞瀏覽介面的時候出現了問題
以下是在網上看到的一種寫法
PHP code
include "connect.php"; $id=$_GET["id"];$query="SELECT * from news Where id=".$id;$result=mysql_query($query,$conn);$row=mysql_fetch_array($result);
報錯是 Warning: mysql_fetch_array() expects parameter 1 to be resource
其實我對這個寫法中得變數id不甚理解,為什麼新定義的一個變數能拿來和資料庫表中的id比較呢?
怎樣改這個錯誤呢?
謝謝~~
------解決方案--------------------
加一行, echo mysql_error();
估計八成是news表不存在怎的
------解決方案--------------------
1.跟樓上說的一樣,mysql_error()看一下
2.$id變數是用來接收頁面通過get傳遞的值,你的網頁地址應該是:http://xxx.com?id=1,這裡id值1就是要擷取的值,通過這個id值跟資料表對比來獲得新聞列表
3.你可以把connect.php貼出來看一下
------解決方案--------------------
你把你的sql在mysql編輯器調式看看,你的代碼應該沒什麼問題。就是不知道你串連資料庫的代碼是否有毛病。
------解決方案--------------------
其實樓主已經說的很清楚了探討
其實我對這個寫法中得變數id不甚理解,為什麼新定義的一個變數能拿來和資料庫表中的id比較呢?
怎樣改這個錯誤呢?
------解決方案--------------------
探討
1.跟樓上說的一樣,mysql_error()看一下
2.$id變數是用來接收頁面通過get傳遞的值,你的網頁地址應該是:http://xxx.com?id=1,這裡id值1就是要擷取的值,通過這個id值跟資料表對比來獲得新聞列表
3.你可以把connect.php貼出來看一下
------解決方案--------------------
友情提醒下...在正式的開發工作中,如果對傳入的參數不進行正確性檢查的話....後果將是毀滅性的...
$_GET 和 $_POST獲得的未經處理資料,不能直接拼接在sql中...必須進行正確性檢查,這是常識...
------解決方案--------------------
探討
友情提醒下...在正式的開發工作中,如果對傳入的參數不進行正確性檢查的話....後果將是毀滅性的...
$_GET 和 $_POST獲得的未經處理資料,不能直接拼接在sql中...必須進行正確性檢查,這是常識...