实现PHP搜索加分页


Posted in PHP onOctober 12, 2016

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

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

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

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

$wherelist=array();
$urlist=array();
if(!empty($_GET['title']))
{
$wherelist[]=" title like '%".$_GET['title']."%'";
$urllist[]="title=".$_GET['title'];
 
}
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="搜索">
</form>
 
<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 " <a href='searchpage.php?page=1{$url}'>首页</a> ";
echo "<a href='searchpage.php?page=".($page-1)."{$url}'>上一页</a>";
echo "<a href='searchpage.php?page=".($page+1)."{$url}'>下一页</a>";
echo " <a href='searchpage.php?page={$maxpage}{$url}'>尾页</a> ";
 
?>
</td>
 </tr>
</table>

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

PHP 相关文章推荐
Mysql中limit的用法方法详解与注意事项
Apr 19 PHP
php 进度条实现代码
Mar 10 PHP
3个PHP多维数组转为一维数组的方法实例
Mar 13 PHP
php实现删除指定目录下相关文件的方法
Oct 20 PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
Nov 25 PHP
ThinkPHP中url隐藏入口文件后接收alipay传值的方法
Dec 09 PHP
浅谈php错误提示及查错方法
Jul 14 PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
Aug 28 PHP
浅析php如何实现App常用的秒发功能
Aug 03 PHP
PHP生成及获取JSON文件的方法
Aug 23 PHP
PHP中关于php.ini参数优化详解
Feb 28 PHP
PHP扩展安装方法步骤解析
Nov 24 PHP
如何使用PHP给图片加水印
Oct 12 #PHP
php版微信数据统计接口用法示例
Oct 12 #PHP
php版微信js-sdk支付接口类用法示例
Oct 12 #PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 #PHP
如何使用php等比例缩放图片
Oct 12 #PHP
php与python实现的线程池多线程爬虫功能示例
Oct 12 #PHP
php实现的SSO单点登录系统接入功能示例分析
Oct 12 #PHP
You might like
防止本地用户用fsockopen DDOS攻击对策
2011/11/02 PHP
Joomla语言翻译类Jtext用法分析
2016/05/05 PHP
PHP命名空间用法实例分析
2019/09/04 PHP
Prototype PeriodicalExecuter对象 学习
2009/07/19 Javascript
jquery isType() 类型判断代码
2011/02/14 Javascript
event.X和event.clientX的区别分析
2011/10/06 Javascript
Ajax搜索结果页面下方的分页按钮的生成
2012/04/05 Javascript
深入了解Node.js中的一些特性
2014/09/25 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
JS实现输入框提示文字点击时消失效果
2016/07/19 Javascript
javascript设计模式Constructor(构造器)模式
2016/08/19 Javascript
浅析$(function) ready和onload 的区别
2016/09/03 Javascript
EasyUI 中combotree 默认不能选择父节点的实现方法
2016/11/07 Javascript
Vuex2.0+Vue2.0构建备忘录应用实践
2016/11/30 Javascript
基于vue实现多引擎搜索及关键字提示
2017/03/16 Javascript
JavaScript中 ES6变量的结构赋值
2018/07/10 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
python基础教程之lambda表达式使用方法
2014/02/12 Python
Python数据分析库pandas基本操作方法
2018/04/08 Python
解决PyCharm import torch包失败的问题
2018/10/13 Python
python读取文件名并改名字的实例
2019/01/07 Python
python 的 openpyxl模块 读取 Excel文件的方法
2019/09/09 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
2020/06/02 Python
python实现学生信息管理系统源码
2021/02/22 Python
New Era英国官网:美国棒球帽品牌
2018/03/21 全球购物
实习自我评价怎么写
2013/12/02 职场文书
经销商会议欢迎词
2014/01/11 职场文书
幼儿园新年寄语
2014/04/03 职场文书
中班开学寄语
2014/04/04 职场文书
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
文明市民先进事迹
2014/05/15 职场文书
今冬明春火灾防控工作方案
2014/05/29 职场文书
水电工岗位职责
2015/02/14 职场文书
优质护理心得体会
2016/01/22 职场文书