将if语句添加到mysql并将搜索查询添加到新页面?

时间:2012-12-29 22:24:43

标签: php mysql

我正在尝试用我的搜索脚本做两件事。

我想知道如何添加if语句,如果没有找到结果,则回显“无结果”。

其次,目前我将结果限制为5,但我希望用户能够点击查看更多结果,如果他们一直在“伦敦”搜索用户,那么一旦他们点击查看所有结果,这将打开一个新窗口,并在新窗口中显示所有搜索结果?

任何人都可以帮助我,已经有一段时间了,我还在学习php和mysql。

<?php
//PHP CODE STARTS HERE

if(isset($_GET['submit'])){

// Change the fields below as per the requirements
$db_host="###";
$db_username="###";
$db_password="";
$db_name="###";
$db_tb_atr_name="display_name";

//Now we are going to write a script that will do search task
// leave the below fields as it is except while loop, which will display results on screen

mysql_connect("$db_host","$db_username","$db_password");
mysql_select_db("$db_name");

$query=mysql_real_escape_string($_GET['query']);


$query_for_result=mysql_query("SELECT *
                        FROM ptb_stats
                        WHERE display_name like '%".$query."%' OR location LIKE '%".$query."%' OR hobbies LIKE '%".$query."%' OR nationality LIKE '%".$query."%' OR gender LIKE '%".$query."%' OR local_station LIKE '%".$query."%' LIMIT 5");
echo "<div class=\"search-results\">";
while($data_fetch=mysql_fetch_array($query_for_result))
{

    echo "<div class=\"text\"><a href=\"profile.php?id={$data_fetch['user_id']}\" class=\"search\">";
    echo "<div class=\"spacing\"><img width=35px height= 30px src=\"data/photos/{$data_fetch['user_id']}/_default.jpg\" class=\"boxgridsearch\"/> "; 
     echo substr($data_fetch[$db_tb_atr_name], 0,160);
    echo "</a></div></div>";

}
echo "<div class=\"morebutton-search\"><a href=\"search_escorts.php?to=echo '%".$query."%'\" target=\"_blank\" \">+ view more results</a></div>";


mysql_close();
}

?>

1 个答案:

答案 0 :(得分:0)

对于您的第一部分,如果返回0行,您可以使用mysql_num_rows进行检查。请注意,mysql_已被弃用,您应继续使用mysqli或PDO。

if(mysql_num_rows($query_for_result)==0){
    echo 'No Results';
}else{
    //process code
}    

对于你的第二部分,听起来好像你正在寻找分页。您将拥有一个带有页码的GET变量,并根据该变量返回正确的结果集。您可以使用LONDON之类的其他GET调用地点。然后您的查询可以加载到显示正确数据的另一页中。