Heim  >  Artikel  >  Backend-Entwicklung  >  PHP查询数据库数据时出现异常

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

WBOY
WBOYOriginal
2016-06-13 13:42:57855Durchsuche

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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn