Warning: mysql_fetch_assoc() expects parameter 1 to be resource
來源:程序員人生 發布時間:2014-05-29 20:53:30 閱讀次數:3561次
今天學習php的時候遇到了這個錯誤:Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:xampphtdocsmyblogindex.php on line 15
源代碼是:
- <?php
- $sql="select entries.*,categories.cat from entries,categorie where entries.cat_id=categories.id order by dateposted desc limit 1;";
- $result=mysql_query($sql);
- $row=mysql_fetch_assoc($result);
- echo "<h2><a href='viewentry.php?id=" . $row['id'] . "'>" . $row['subject'] . "</a></h2><br/>";
- echo "<i> in <a href='viewcat.php?id=" . $row['cat_id'] . "'>" . $row['cat'] . "</a> - Posted on " . date("D js F Y g.iA",strtotime($row['dateposted'])) . "</i>";
- echo "<p>";
- echo nl2br($row['body']);
- echo "</p>";
百度了一下,找到了解決辦法!他出錯的原因是因為數據庫中沒有數據導致musql_fetch_assoc()函數返回值為false,所以下面的$row['']使用就出錯了,所以在使用mysql_fetch_assoc() 函數的時候先對$result做判斷!
- <?php
- $sql="select entries.*,categories.cat from entries,categorie where entries.cat_id=categories.id order by dateposted desc limit 1;";
- $result=mysql_query($sql);
- if($result){
- $row=mysql_fetch_assoc($result);
- echo "<h2><a href='viewentry.php?id=" . $row['id'] . "'>" . $row['subject'] . "</a></h2><br/>";
- echo "<i> in <a href='viewcat.php?id=" . $row['cat_id'] . "'>" . $row['cat'] . "</a> - Posted on " . date("D js F Y g.iA",strtotime($row['dateposted'])) . "</i>";
- echo "<p>";
- echo nl2br($row['body']);
- echo "</p>";
- }
- else{
- echo "沒有文章";
- }
- ?>
這樣就不會報錯了,注釋:mysql_fetch_assoc() 函數
定義和用法:mysql_fetch_assoc() 函數從結果集中取得一行作為關聯數組,返回根據從結果集取得的行生成的關聯數組,如果沒有更多行,則返回 false。
語法:mysql_fetch_assoc(data)
data 必需,要使用的數據指針。該數據指針是從 mysql_query() 返回的結果。
提示和注釋
注釋:mysql_fetch_assoc() 和用 mysql_fetch_array() 加上第二個可選參數 MYSQL_ASSOC 完全相同。它僅僅返回關聯數組。這也是 mysql_fetch_array() 初始的工作方式。
提示:如果在關聯索引之外還需要數字索引,用 mysql_fetch_array()。
注釋:本函數返回的字段名是區分大小寫的。
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈