> 백엔드 개발 > PHP 튜토리얼 > 为什么连接了mysql却查询不了,该怎么处理

为什么连接了mysql却查询不了,该怎么处理

WBOY
풀어 주다: 2016-06-13 10:12:33
원래의
1052명이 탐색했습니다.

为什么连接了mysql却查询不了
表单页代码:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->catalog search<h1>catalog search</h1>
로그인 후 복사
choose search type:

enter search term:



PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><h1>search results</h1><?php $searchtype=$_POST['searchtype'];$searchterm=trim($_POST['searchterm']);if(!$searchtype||!$searchterm){    echo"请输入值";        exit;}if(!get_magic_quotes_gpc()){    $searchtype=addslashes($searchtype);    $searchterm=addslashes($searchterm);}@ $db=new mysqli('localhost','root','root','books');if (mysqli_connect_errno()) {echo 'Error: Could not connect to database. Please try again later.';exit;}$query="select * from books where".$searchtype."like '%".$searchterm."%'";$result=$db->query($query);$num_results=$result->num_rows;echo "<p>Number of books found:".$num_results."</p>";for ($i=0;$ifetch_assoc();    echo"<p><strong>".($i+1)."title:";    echo htmlspecialchars(stripslashes($row['title']));    echo "</strong><br>author:";    echo stripslashes($row['author']);    echo"<br>isbn:";    echo stripslashes($row['isbn']);    echo"<br>price:";    echo stripslashes($row['price']);    echo"</p>";}?>
로그인 후 복사


输出结果:

search results
Number of books found:

为什么查询不出结果

------解决方案--------------------
你没有在执行查询后进行检错,应补上
1、确认 $searchtype 是正确的字段名
2、$query="select * from books where".$searchtype."like '%".$searchterm."%'";
中 like 前少了个空格
写成这样是不是清爽些?
$query = "select * from books where $searchtype like '%$searchterm%'";


------解决方案--------------------
$query="select * from books where".$searchtype."like '%".$searchterm."%'";
echo $query;就知道是否等价了。 红字部分连在一起了还对吗?
------解决方案--------------------
$query="select * from books where".$searchtype."like '%".$searchterm."%'";
$query = "select * from books where $searchtype like '%$searchterm%'";
这两个sql是有区别的。
""里面的都是字符串,然后你没有空格直接写.$searchtype。。。。你自己想想结果一样吗?
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿