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 ...
随机推荐
- redhat nginx 启动脚本
#!/bin/sh # # nginx - this script starts and stops the nginx daemin # # chkconfig: - 85 15 # descrip ...
- JavaScript DOM编程艺术-学习笔记(第十二章)
第十二章 1.本章是综合前面章节的所有东西的,一个综合实例 2.流程:①项目简介:a.获取原始资料(包括文本.图片.音视频等) b.站点结构(文件目录结构) c.页面(文件)结构 ②设计(切图) ③c ...
- 对比git pull和git pull --rebase
1.使用下面的关系区别这两个操作:git pull = git fetch + git mergegit pull --rebase = git fetch + git rebase 2 一.基本 g ...
- 第三天 函数 三元运算 lambda表达式 内置函数 文件操作
面向过程: 直接一行一行写代码,遇到重复的内容复制黏贴. 不利于代码阅读 代码没有复用 面向对象 将代码块定义为函数,以后直接调用函数 增强了复用性 函数的定义方法 def 函数名(传递参数): 函数 ...
- wordpress建站过程5——footer.php
footer中写的就只有网站地图,公司信息等等简单东西而已: <?php wp_footer(); ?> <div class="footer"> < ...
- HDU - 3966 Aragorn's Story(树链剖分入门+线段树)
HDU - 3966 Aragorn's Story Time Limit: 3000MS Memory Limit: 32768KB 64bit IO Format: %I64d & ...
- JS 阻止整个网页的内容被选中
pretty-girl { -webkit-user-select: none; } 可是!可是!不是每个浏览器都可以不忧桑!!!那就只能请脚本大王出山了. 阻止选中 有时候,我们需要禁止用户选中一些 ...
- ensp实战之防火墙安全转发策略
本次实验用防火墙是USG6000V,拓扑图如下: 步骤一: 按上面配好PC1.2.3以及WWW服务器的IP地址.子网掩码以及网关: 步骤二: 进入防火墙的CLI命令模式下,按一下命令配置: 配置各个接 ...
- WITH common_table_expression
Feature: 公用表表达式只能包含一个SELECT,多SELECT需UNION,UNION ALL 公用表表达式只能引用一次 公用表表达式可以包括对自身的引用,这种表达式称为递归公用表表达式 -- ...
- prototype属性的理解
1.对象:对象是JS的基本数据类型(原始类型(数字.字符串和布尔值),对象类型).对象是一种复合值:它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值. 2.三类JS对象和两类属性: 内 ...