0
警告:mysql_num_rows()预计参数1是资源,布尔在/storage/ssd5/102/3255102/public_html/search.php给出线29PHP警告同时使搜索引擎
我的代码:
<?php
$button = $_GET [ 'submit' ];
$search = $_GET [ 'search' ];
if(!$button)
echo "you didn't submit a keyword";
else {
if(strlen($search) <= 1)
echo "Search term too short";
else {
echo "You searched for <b> $search </b> <hr size='1' > </ br > ";
mysql_connect("localhost","id3255102_data","I AM NOT GOING TO TELL YOU MY PASS!") ;
mysql_select_db("id3255102_base");
$search_exploded = explode (" ", $search);
$x = 0;
foreach($search_exploded as $search_each) {
$x++;
$construct = "";
if($x == 1)
$construct .="keywords LIKE '%$search_each%'";
else
$construct .="AND keywords LIKE '%$search_each%'";
}
$construct = " SELECT * FROM SEARCH_ENGINE WHERE $construct ";
$run = mysql_query($construct);
$foundnum = mysql_num_rows($run);
if ($foundnum == 0)
echo "Sorry, there are no matching result for <b> $search </b>. </br> </br> 1. Try more general words. for example: If you want to search 'how to create a website' then use general keyword like 'create' 'website' </br> 2. Try different words with similar meaning </br> 3. Please check your spelling";
else {
echo "$foundnum results found !<p>";
while($runrows = mysql_fetch_assoc($run)) {
$title = $runrows ['title'];
$desc = $runrows ['description'];
$url = $runrows ['url'];
echo "<a href='$url'> <b> $title </b> </a> <br> $desc <br> <a href='$url'> $url </a> <p>";
}
}
}
}
?>
我在等这么久所以请帮助我。
PHP版本:5.6 教程:http://mrbool.com/how-to-create-your-own-search-engine-with-php-and-mysql/32733
回声你的查询是否有效 – urfusion
检查你的查询结果集中的行数是否成功或失败时是否为FALSE。 – honarkhah
您使用的是完全过时的mysql连接器,这个连接器已经过时多年了,并且自从PHP版本7以来实际上已经被完全删除。结果,您的代码对sql注入攻击全面开放。请阅读将“准备好的语句”与“参数绑定”组合使用以避免此类漏洞的优点。 – arkascha