标题应该清楚问题。搜索功能按预期工作,但第一次点击的内容根本不会显示,我不知道为什么。这是代码:
<form action="admin_orders_search.php" method="GET">
<input type="text" name="query" value="Search"/>
</form>
<?php
$query = $_GET['query'];
$query = htmlspecialchars($query);
$query = mysql_real_escape_string($query);
$sql = "SELECT * FROM orders WHERE 1";
$matches = preg_split('/\s+/',$query);
foreach($matches as $match){
$sql .= " AND `ship_eta` LIKE '%".$match."%'";
}
$raw_results = mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($raw_results) > 0){
while($results = mysql_fetch_array($raw_results))
{
// ----结果开始----&gt;
$res=mysql_query("select * from orders ".$qry." order by id desc ");
while($row=mysql_fetch_array($raw_results))
{ ?>
//这是显示的点击次数
}
// ----结果结束----&gt;
}
}
else{
echo "No hits";
}
?>
答案 0 :(得分:0)
在代码中:
$res=mysql_query("select * from orders ".$qry." order by id desc ");
while($row=mysql_fetch_array($raw_results))
{
//results here
}
您仍然使用变量$raw_results
。我想你想使用变量$res
,因为你已经有$raw_results
答案 1 :(得分:0)
我在代码中找到了一些未使用的行,删除它们后就可以了!受影响的行是:
...
if(mysql_num_rows($raw_results) > 0){
// ---- RESULTS START ---->
while($row=mysql_fetch_array($raw_results))
{ ?>
// here are the hits
}
// ---- RESULT END ---->
}
else{
echo "No hits";
}
}
else{
echo "error: ".$min_length." needed minimum!";
}
?>
// ---- SEARCH END ---->
<?php
}
}
?>