<?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/>";
}
}
?>
这是我的搜索引擎脚本。此脚本仅显示一个结果。如何更改它以使用php
显示multy结果答案 0 :(得分:3)
更改为:
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 :(得分:1)
对Elen(正确)答案的更多解释。 mysql_fetch_assoc()从结果集中获取一条记录。您可以反复调用它来依次获取每条记录。一旦你获取了最后一条记录“$ row = mysql_fetch_assoc($ query)”就会失败。因此,您可以在 while 循环中使用该表达式来获取每一行,并在完成后停止。
答案 2 :(得分:0)
这里mysql_fetch_assoc
您只是获取结果,而不是循环它们。
http://php.net/manual/en/function.mysql-fetch-assoc.php
使用foreach()
或任何循环方法获得更多结果。