2012-03-29 142 views
0
<?php 
ini_set('display_errors', 0); 
$search = $_GET ['search']; 
mysql_connect("localhost", "root", "gokul"); 
mysql_select_db("search123"); 
$query = mysql_query("SELECT * FROM search WHERE name LIKE '%" . $queryString . "%'"); 
$foundnum = mysql_num_rows($query); 
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<br/>4.PLEASE DON'T USE SPACES"; 
} 
else { 
    echo "$foundnum results found !<p>"; 
    $row = mysql_fetch_assoc($query); 
    { 
     $title = $runrows ['title']; 
     $desc = $runrows ['description']; 
     $url = $runrows ['url']; 
     echo "<a href=$row[url]>$row[name]</a><br><font color=green>$row[url]</font><br>$row[desc]<br/>"; 
    } 
} 
?> 

这是我的搜索引擎脚本。该脚本仅显示一个结果。如何改变它使用PHPphp搜索引擎脚本

+0

你需要添加循环来打印你的结果。即'while' – Elen 2012-03-29 14:38:00

回答

3

变化显示MULTY结果:

while ($row = mysql_fetch_assoc($query)) { 
    $title = $runrows ['title']; 
$desc = $runrows ['description']; 
$url = $runrows ['url']; 
echo "<a href=$row[url]>$row[name]</a><br><font color=green>$row[url]</font><br>$row[desc]<br/>"; 

} 
1

对Elen的(正确的)答案有更多的解释。 mysql_fetch_assoc()从结果集中获取一条记录。您可以反复调用它来轮流获取每条记录。一旦获取最后一条记录“$ row = mysql_fetch_assoc($ query)”将会失败。因此,您可以在中使用该表达式,而在循环中获取每行并在完成时停止。