2012-11-02 50 views
-5

我想創建一個基於謠言的網站。在該網站的一部分中,有一個工作特徵,您可以在其中發佈謠言並顯示謠言。我的一些錯誤mysql_fetch_assoc

但是我正在主頁上工作,以便將最新的兩個傳言放在一張表中。下面我的代碼,有沒有行的表,儘管數據在mysql表之中,而這個錯誤消息:

警告:mysql_fetch_assoc():提供的參數不是/網站的一個有效的MySQL結果資源/123reg/LinuxPackage22/th/eq/li/theqlick.com/public_html/leeds.php上線212

任何想法?我的代碼如下:

$query = "SELECT * FROM rumour ORDER BY id DESC"; 
$row = mysql_fetch_assoc($query); 
$id = $row['id']; 
$name = $row['name']; 
$description = $row['description']; 

echo "<table class ='rumour' border='1'>"; 
echo "<tr>"; 
echo "<td style = 'font-size:18pt;font-family:Noteworthy-Bold;'> Hot Rumours </td>"; 
echo "<tr>"; 
echo "<td class = 'td1'>". text2link($row['description']). "</td>"; 
echo "</tr>"; 
echo "<tr>"; 
echo "<td class = 'td1'>". text2link($row['description']). "</td>"; 
echo "</tr>"; 
echo "</table>"; 
+0

您需要修改行的'$查詢=請求mysql_query (「SELECT * FROM rum​​or ORDER BY id DESC」);' – asprin

+0

您的查詢結果需要具有mysql_fetch_assoc - $ result = mysql_query($ sql);然後$ row = mysql_fetch_assoc($ result) – 2012-11-02 12:42:34

+2

此外,您還需要停止使用'mysql_ *'函數並使用'pdo'或'mysqli_ *' – Leri

回答

0

要發佈的串入mysql_fetch_assoc,而不是請求mysql_query ...

$query = "SELECT * FROM rumour ORDER BY id DESC"; 

應該

$query = mysql_query("SELECT * FROM rumour ORDER BY id DESC"); 
0

manual for that function說:

array mysql_fetch_assoc (resource $result) 

您正在向它傳遞一個包含查詢的字符串,而不是運行查詢的結果。

您需要先通過mysql_query

...至少你會這樣做,如果你繼續使用mysql_*,你不應該這樣做。它是obsolete,你應該使用modern replacement

0

使用直接使用mysql_fetch_assoc($ query)中的$ query作爲字符串類型。 你忘了得到結果。用這個代替:

$query="Your query here"; 
$result=msqyl_query($query); 
$row = mysql_fetch_assoc($query); 
0

你已經忘了你的查詢使用mysql_query功能

執行試試這個代碼可能會幫助你

$query = "SELECT * FROM rumour ORDER BY id DESC"; 
$result=mysql_query($query); 
$row = mysql_fetch_assoc($result);