首頁  >  文章  >  後端開發  >  PHP查询数据库数据时出现异常

PHP查询数据库数据时出现异常

WBOY
WBOY原創
2016-06-13 10:11:311094瀏覽

PHP查询数据库数据时出现错误
PHP 查询数据库books中的books表时出现以下错误!

Notice: Trying to get property of non-object in D:\wamp\Apache\htdocs\php\results.php on line 33

Fatal error: Call to a member function fetch_assoc() on a non-object in D:\wamp\Apache\htdocs\php\results.php on line 35


代码如下:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->            <title> Book-O-Rama Catalog Search</title>                <h1>Book-O-Rama Catalog Search</h1><?php //create short variable names    $searchtype=$_POST['searchtype'];    $searchterm=trim($_POST['searchterm']);            if (!$searchtype || !$searchterm)    {        exit('You have not entered search detais,please go back again');    }         if (!get_magic_quotes_gpc()){                    $searchtype=addslashes($searchtype);        $searchterm=addslashes($searchterm);    }            @ $db=new mysqli('localhost','root','password','books');        if (mysqli_connect_errno()){        echo "could not connect to database,please try again later.".mysqli_connect_errno();        exit;    }else {          $sql ="select * from books where".$searchtype."like'%".$searchterm."%'";            $result=$db->query($sql);        $num_result=$result->num_rows;        for ($i=0;$ifetch_assoc();            echo "<p>".($i+1)."title:";            echo htmlspecialchars(stripslashes($row['author']));            echo "Author:".stripslashes($row->newsauthor);            echo "ISBN:".stripslashes($row->newsISBN);            echo "price:".stripslashes($row->newsprice)."</p>";        }    }    $result->free();    $db->colse();?>    

上述问题那微微大虾能给个解决方案!

------解决方案--------------------
PHP code
$sql ="select * from books  where  ".$searchtype."  like  '%".$searchterm."%'";        if ($result=$db->query($sql)) {            $num_result=$result->num_rows;            for ($i=0;$ifetch_assoc();                echo "<p>".($i+1)."title:";                echo htmlspecialchars(stripslashes($row['author']));                echo "Author:".stripslashes($row->newsauthor);                echo "ISBN:".stripslashes($row->newsISBN);                echo "price:".stripslashes($row->newsprice)."</p>";            }        }else{            echo "fail.";            exit;        }<div class="clear">
                 
              
              
        
            </div>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn