我创建了一个数据库搜索,该数据库生成一个HTML表来显示结果。结果显示一个文章标题,该文章标题超链接到服务器上的位置,以及文章的作者。
一切正常,直到我使用在线脚本设置分页。分页返回25个结果,导航到下一页。所有结果在第一页都很好,但似乎搜索查询没有传送到其他页面。
如果选择另一个页面“2,3,...,last”,它将显示整个mysql表中的信息,而不是查询的数据。
我已设置会话来执行搜索字词,但它似乎不起作用。我相信问题出在我用于显示结果的代码中。
我使用的脚本以此为例显示结果,但我无法使用当前的“while循环语句”示例
if ($page < $counter - 1)
$pagination.= "<a href=\"$targetpage?page=$next\">next �</a>";
else
$pagination.= "<span class=\"disabled\">next �</span>";
$pagination.= "</div>\n";
}
?>
<?php
while($row = mysql_fetch_array($result))
{
// Your while loop here
}
?>
<?=$pagination?>
这是用于显示数据的脚本我已使用的最后一位。
<h2>Results</h2>
<table border="0" cellpadding="5">
<tr>
<td><div align="center"><strong>Title</strong></div></td>
<td><div align="center"><strong>Author</strong></div></td>
</tr>
<?php do { ?>
<tr>
<td><?php echo '<a href="' . 'http:filelocation' . $row['pdf_path'] . '" target="_new">' .$row['pdf_title'] . '</a>';
?></td>
<td><?php echo $row['author'] ;?></td>
<td><div align="center"><?php echo $row['pages']; ?></div></td>
</tr>
<?php }
while ($row = mysql_fetch_array($sql))
?>
我使用“do while”语句来获取数据和显示结果,但不知道如何使用正确的语法添加“while($ row = mysql_fetch_array($ result))”。
请帮忙!
答案 0 :(得分:0)
假设您的搜索查询为$searchquery
$pagination.= "<a href=\"$targetpage?searchquery=$searchquery&page=$next\">next �</a>";
答案 1 :(得分:0)
我认为你从搜索表单中获取了这些值,所以:
然后在您的search.php中,您需要获取提交的参数,这些参数将放在$_GET
变量中,然后再次过滤您的数据。