php mysql数据库 分页与搜索
<?php
/**
* Created by coder meng.
* User: coder meng
* Date: 2016/8/29 10:27
*/
header("Content-type:text/html;charset=utf-8");
include_once 'config.php'; /*$sql="select * from article ";
$rs=mysql_query($sql);*/
$where='';
$url='';
$wherelist=array();
$urllist="";
if(!empty($_GET['author'])){
$author=$_GET['author'];
$wherelist[]="author like '%$author%'";
$urllist[]="&author=$author";
}
if(!empty($_GET['title'])){
$title=$_GET['title'];
$wherelist[]="title like '%$title%'";
$urllist[]="&title=$title";
}
if(!empty($_GET['content'])){
$content=$_GET['content'];
$wherelist[]="content like '%$content%'";
$urllist[]="&content=$content";
} if(count($wherelist)>0){
$where=' where '.implode(' and ',$wherelist);
$url=implode('',$urllist);
} $sql2="select * from article $where ";
$rs=mysql_query($sql2);
//$sql1="select * from article $limit"; // (1-1)*10
// 2, 共多少页 = 总记录数/每页条数
$totlanums=mysql_num_rows($rs); // 101 符合的 13
// 1, 每页条数
$pagesize=2;
//共多少页
$maxpage=ceil($totlanums/$pagesize);//最大页码 也是总页数
$page=isset($_GET['page'])?$_GET['page']:1;
if($page<1){
$page=1;
}
if($page>$maxpage){
$page=$maxpage;
}
$start=($page-1)*$pagesize;
$limit ="limit $start,$pagesize";
$sql3="select * from article $where $limit";
$rs3=mysql_query($sql3);
$arr=array(); //分页的原理 /*while($row = mysql_fetch_assoc($rs)){
$arr[] =$row;
}*/ /*$sql1="select * from article limit 10,10"; //(1-1)*10
$sql1="select * from article limit 20,10"; //(1-1)*10*/ ?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div style="width: 600px;margin: 0 auto;">
<form action="pagelist.php" method="get">
<table border="1" width="600">
<tr>
<td>作者:<input type="text" name="author" value="<?php echo isset( $_GET['author'])?$_GET['author']:'';?>"></td>
<td>标题:<input type="text" name="title" value="<?php echo isset( $_GET['title'])?$_GET['title']:'';?>"></td>
<td>内容:<input type="text" name="content" value="<?php echo isset( $_GET['content'])?$_GET['content']:'';?>"></td>
<td><input type="submit" value="搜索"></td>
</tr>
</table>
</form>
<table border="1" width="600">
<tr>
<td>编号</td>
<td>作者</td>
<td>标题</td>
<td>内容</td>
<td>操作</td>
</tr>
<?php while($row = mysql_fetch_assoc($rs3)){ ?>
<tr>
<td><?php echo $row['id']?></td>
<td><?php echo $row['author']?></td>
<td><?php echo $row['title']?></td>
<td><?php echo $row['content']?></td>
<td>编辑|删除</td>
</tr>
<?php } ?>
<tr>
<td colspan="5" align="center">
<?php
echo "当前第{$page}页/{$maxpage},共{$totlanums}条记录";
if($page>1){
echo "<a href='pagelist.php?page=1$url'>首页</a>";
echo "<a href='pagelist.php?page=".($page-1)."$url'>上一页</a>";
}
if($page<$maxpage){
echo "<a href='pagelist.php?page=".($page+1)."$url'>下一页</a>";
echo "<a href='pagelist.php?page=$maxpage{$url}'>尾页</a>";
}
?>
</td>
</tr>
</table>
</div>
php mysql数据库 分页与搜索的更多相关文章
- Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值
1 Statement和PreparedStatement的特点 a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录 b)对于创建和 ...
- oracle sqlserver mysql数据库分页
1.Mysql的limit用法 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM tabl ...
- MySQL 数据库 分页查询
在使用MySQL 进行数据库分页查询的时候最主要是使用LIMIT子句进行查询: 首先来看一下LIMIT: LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两 ...
- EntityFrameWork使用MySql数据库分页的BUG
环境 使用MySQL Connector NET 6.7.4+EF5.0+VS2010 问题描述 IQueryable<T>类型的Where方法和Skip或Take方法一起使用时,生成的S ...
- mysql数据库分页查询优化
原博:MySQL单表百万数据记录分页性能优化 limit优化 当数据很多需要进行分页查询时:需要先查出第一条数据的id然后根据id查询大于id的数据 limt 一页的数据量 1. 直接用limit ...
- Mysql数据库分页查询
为什么使用分页查询: 数据量比较大时,如果全部查询,展示刚给用户,数据量太大,用户难以接受.并且数据量大,查询慢.如果此时将大量的数据读取到java内存中,可能会存储崩溃. 分页查询的方式: 1.全部 ...
- java(2014)实现对mysql数据库分页的代码
package util; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultS ...
- servlet实现mysql数据库分页
一.分页所需要的sql语句准备 select * from table limit m,n其中m是指记录开始的index,从0开始,表示第一条记录n是指从第m+1条开始,取n条. 例如:select ...
- 用shell 实现对MySQL数据库分页
参考链接 http://mp.weixin.qq.com/s?__biz=MzAxMzE4MDI0NQ==&mid=208299533&idx=1&sn=4cab00793eb ...
随机推荐
- mysql修改密码Your password does not satisfy the current policy requirements
出现这个问题的原因是:密码过于简单.刚安装的mysql的密码默认强度是最高的,如果想要设置简单的密码就要修改validate_password_policy的值, validate_password_ ...
- C# .NETWEB开发6大内置对象
ASP.NET 内置对象包括 1.Response 2.Request 3.Server 4.Application 5.Session 6.Cookie 1 Request对象主要是让 ...
- 在cmd中设置字体
1.首先在cmd中输入chcp 65001 回车(通过 chcp命令改变代码页,UTF-8的代码页为65001) 2.右击命令提示符的标题栏点击属性. 3.在属性中选择字体后点击确认即可.
- Web多客户端单点登录
一 数据库 除了用户表之外,新建一个外联表<用户票据表> fdUsTiUserID,fdUsTiType,fdUsTiTicket 分别对应用户ID,客户端类型(PC,mobile) 票 ...
- Deploy Django in Windows
配置 安装目录 D:\PythonWebSW\(免安装) d:\Program Files\ (安装版) 工作目录 E:/PythonWeb/code 项目名称 voith_sales Insta ...
- LR11安装注意事项
一.安装Microsoft Visual c++2005 sp1运行时组件,就会提示命令行选项语法错误,键入“命令/?”可获取帮肋信息 解决方法: 进入LoadRunner11下载\loadrunne ...
- oracle 字段类型详解
CHAR 固定长度字符串 最大长度2000 bytes VARCHAR2 可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749 NCHAR 根据字符集而定的固定长度字符串 最大长度 ...
- Redis的windows安装
第一步:下载Windows下的Redis链接:http://web.kuaipan.cn/n/drive/files/179275650081763322 第二不:打开cmd窗口命令:定位的Redis ...
- Linux使用rsync客户端与服务端同步目录进行备份
一.服务端设置 1. 修改 server 端配置 # vi /etc/rsyncd.conf 修改: uid = nobody # 该选项指定当该模块传输文件时守护进程应该具有的uid.默认值为&qu ...
- 一个突发性的误解C# 引用类型
最近再看IOCP,结果里面的一个赋值过程,造成了误解. test t1 = new test(); test t2 = new test(); test t4 = new test(); t1= t2 ...