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 ...
随机推荐
- tableView区头不显示
不知道什么原因 如果设置tableView的样式为Group 则必须写代理 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; co ...
- Android;设置TextView加粗 代码设置
我用过paint的那种方式,不好使. private void setTextBold(TextView textView) { //android中为textview动态设置字体为粗体 textVi ...
- Note_JavaWeb_SpringMVC_尚硅谷
Spring MVC框架 官网文档 \spring-framework-4.2.6.RELEASE\docs\spring-framework-reference\htmlsingle ------- ...
- liunx下试用yum进行php及opchache扩展安装
Centos 6.6 环境: php 5.6.29 nginx:1.10.2 1.配置安装包源 # CentOs 6.x rpm -Uvh http://mirror.webtatic.com/yum ...
- Nginx+Apache实现反向代理
一 反向代理 1.1 反向代理是什么 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器, 并将从服务器上得到的结果返回给 ...
- https请求时出错:Could not establish trust relationship for the SSL/TLS secure channel
当我在用NET命名空间下获取URL的时候,提示如下错误: The underlying connection was closed: Could not establish trust relatio ...
- cpanel导入大数据库(mysql)的方法
phpmyadmin是一件很方便的在线管理MySQL数据库的工具,但对于较大的数据库的导出和导入却很容易出错.特别是导入工作,通常5M已经是它的极限了.这里,主要介绍一下如何通过cPanel导入大型的 ...
- 让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法--(转)
如有雷同,不胜荣幸,若转载,请注明 让IE6 IE7 IE8 IE9 IE10 IE11支持Bootstrap的解决方法 最近做一个Web网站,之前一直觉得bootstrap非常好,这次使用了boot ...
- Vue.js 组件笔记
Vue 组件总结笔记 一. 创建组件 1. 使用组件三部曲 ( 创建, 注册, 使用 ) 2. 全局组件:Vue.component('tag', {}); 3. 局部组件: components 属 ...
- AR9531的mac地址
root@OpenWrt:/# ifconfigbr-lan Link encap:Ethernet HWaddr 00:11:22:34:56:78 inet addr ...