Php&;Mysql搜索问题
以下是我的search.php代码:Php&;Mysql搜索问题,php,mysql,Php,Mysql,以下是我的search.php代码: <?php if(isset($_POST['action']) && $_POST['action'] == "Search Question") { $search = mysql_real_escape_string(trim(htmlspecialchars($_POST['search']))); $err = array(); if(isset($search)) { if(em
<?php
if(isset($_POST['action']) && $_POST['action'] == "Search Question")
{
$search = mysql_real_escape_string(trim(htmlspecialchars($_POST['search'])));
$err = array();
if(isset($search))
{
if(empty($search))
$err[] = "Please write your question name";
elseif(is_numeric($search))
$err[] = "Wrong values entered";
}
if(!empty($err))
{
foreach($err as $er)
{
echo "<font color=red>$er<br/></font>";
}
}
else
{
$search_sql = mysql_query("SELECT * FROM questions WHERE q_name LIKE '%$search%'");
//$search_sql = mysql_query("SELECT * FROM questions WHERE MATCH(q_name, answer) AGAINST '$search' ");
$numserach = mysql_num_rows($search_sql);
if($numserach == 1)
{
echo "<font color='green'><strong>$numserach Question found</strong></font><br/>";
while($result = mysql_fetch_array($search_sql))
{
$subid = $result['sub_id'];
$id = $result['id'];
$qquestionsname = $result['q_name'];
////////////////////////////////////////////////// SEARCH SHOW START HERE ///////////////////////
//include("toppagi.php");
$questions = $result['q_name'];
echo "<a href='answerdetails.php?id=$id&subid=$subid&questionname=$qquestionsname'>$questions</a><br/>";
//include("bottompagi.php");
////////////////////////////////////////////////// SEARCH SHOW END HERE ///////////////////////
}
}
else
{
echo "<font color=red>No Result Found</font>";
}
}
}
?>
使用此行
if($numserach > 0)
{.....
而不是
if($numserach == 1)
{.....
用这条线
if($numserach > 0)
{.....
而不是
if($numserach == 1)
{.....
将以下说明更改为最新版本:
if($numserach == 1) --> if($numserach >0)
然后重新执行脚本。将下面的指令更改为最新的指令:
if($numserach == 1) --> if($numserach >0)
然后重新执行脚本。正如其他人已经提到的,通过替换
if($numserach == 1)
if($numserach == 1)
与
非常重要:
我在OP数据库处理严重不好的每一个问题上都这样做,作为提倡更好实践的一种方式
请花些时间阅读如何使用PDO。
当您的项目被黑客攻击时(如果这是专业工作),您将避免将来的尴尬,您将学到一种新的东西来保护自己,并为自己提供更好的机会来提高应用程序的性能 正如其他人已经提到的,通过替换
if($numserach == 1)
if($numserach == 1)
与
非常重要:
我在OP数据库处理严重不好的每一个问题上都这样做,作为提倡更好实践的一种方式
请花些时间阅读如何使用PDO。
当您的项目被黑客攻击时(如果这是专业工作),您将避免将来的尴尬,您将学到一种新的东西来保护自己,并为自己提供更好的机会来提高应用程序的性能 更换
与
因为目前,如果只找到了一个术语,那么只显示结果。如果找到多个,则不会显示结果。替换
与
因为目前,如果只找到了一个术语,那么只显示结果。如果找到多个,则不会显示任何结果。Nice@Rab Nawaz它正在工作!但我还有一个问题。。。找到我的搜索项目后,我看到了所有细节,但当我返回时,Firefox显示“文档已过期”。为什么?@Shibbir,这就是POST
方法的工作原理。你可以在另一个页面中提供搜索结果,这样当用户返回时,他们就不会得到过期的文档。@Shibbir,好吧,你可以通过向上投票+接受他的回答来表达你对这家伙的感激之情@Rab Nawaz它现在起作用了!但我还有一个问题。。。找到我的搜索项目后,我看到了所有细节,但当我返回时,Firefox显示“文档已过期”。为什么?@Shibbir,这就是POST
方法的工作原理。你可以在另一个页面上提供搜索结果,这样当用户返回时,他们就不会得到过期的文档。@Shibbir,好吧,你可以通过向上投票+接受他的回答来表达你对这家伙的感激之情。随机摘录自教程:Oracle数据库被许多“企业”公司使用,但现在有了更灵活的选择。有趣的xD@ÁlvaroG.Vicario,:D |这是我见过的最容易理解的PDO教程之一。随机摘录自教程:Oracle数据库被许多“企业”公司使用,但现在有了更灵活的选择。有趣的xD@ÁlvaroG.Vicario,:D |这是我见过的最容易理解的PDO教程之一。