实现PHP搜索加分页

分页显示是浏览大量数据的一种方法。对于初学者来说常常对这个问题摸不着头绪,因此特地撰写此文对这个问题进行详细的讲解,力求让看完这篇文章的朋友在看完以后对于分页显示的原理和实现方法有所了解。

所有示例代码均使用PHP编写。

所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示

请详细阅读以下代码,自己调试运行一次,最好把它修改一次,加上自己的功能

}
if(!empty($_GET['keywords']))
{
$wherelist[]=" keywords like '%".$_GET['keywords']."%'";
$urllist[]="keywords=".$_GET['keywords'];
}if(!empty($_GET['author']))
{
$wherelist[]=" author like '%".$_GET['author']."%'";
$urllist[]="author=".$_GET['author'];
}
$where="";
if(count($wherelist)>0)
{
$where=" where ".implode(' and ',$wherelist);
$url='&'.implode('&',$urllist);
}
//分页的实现原理
//1.获取数据表中总记录数
$sql="select count() from news $where ";
$result=MysqL_query($sql);
$totalnum=MysqL_num_rows($result);
//每页显示条数
$pagesize=5;
//总共有几页
$maxpage=ceil($totalnum/$pagesize);
$page=isset($_GET['page'])?$_GET['page']:1;
if($page <1)
{
$page=1;
}
if($page>$maxpage)
{
$page=$maxpage;
}
$limit=" limit ".($page-1)
$pagesize.",$pagesize";
$sql1="select * from news {$where} {$limit}";

//$sql1="select * from news {$where} {$limit}";
$res=MysqL_query($sql1);

?>
<form action="searchpage.PHP" method="get">
标题:<input type="text" name="title" value="<?php echo $_GET['title']?>" size="8">
关键字<input type="text" name="keywords" value="<?php echo $_GET['keywords']?>" size="8">
作者:<input type="text" name="author" value="<?php echo $_GET['author']?>" size="8">
<input type="button" value="查看全部" onclick="window.location='searchpage.PHP'">
<input type="submit" value="搜索">

<table border="1" width="1000" align="center">
<tr>
<td>编号</td>
<td>标题</td>
<td>关键字</td>
<td>作者</td>
<td>日期</td>
<td>内容</td>
</tr>
<?php while($row= mysql_fetch_assoc($res)){?>
<tr>
<td><?php echo $row['id'] ?></td>
<td><?php echo $row['title'] ?></td>
<td><?php echo $row['keywords'] ?></td>
<td><?php echo $row['author'] ?></td>
<td><?php echo date("Y-m-d H:i:s",$row['addtime']) ?></td>
<td><?php echo $row['content'] ?></td>
</tr>
<?php }?>
<tr>
<td colspan="6">
<?php
echo " 当前{$page}/{$maxpage}页 共{$totalnum}条";
echo " 首页 ";
echo "上一页";
echo "下一页";
echo " 尾页 ";

?>
</td>
</tr>
</table>

希望本文所述对大家PHP程序设计有所帮助。

相关文章

Hessian开源的远程通讯,采用二进制 RPC的协议,基于 HTTP 传输。可以实现PHP调用Java,Python,C#等多语...
初识Mongodb的一些总结,在Mac Os X下真实搭建mongodb环境,以及分享个Mongodb管理工具,学习期间一些总结...
边看边操作,这样才能记得牢,实践是检验真理的唯一标准.光看不练假把式,光练不看傻把式,边看边练真把式....
在php中,结果输出一共有两种方式:echo和print,下面将对两种方式做一个比较。 echo与print的区别: (...
在安装好wampServer后,一直没有使用phpMyAdmin,今天用了一下,phpMyAdmin显示错误:The mbstring exte...
变量是用于存储数据的容器,与代数相似,可以给变量赋予某个确定的值(例如:$x=3)或者是赋予其它的变...