首先是主页面,与上篇分页页面相同

 <table width="100%" border="1" cellpadding="0"  cellspacing="0">             //建表
<tr> //表头
<td>AreaCode</td>
<td>AreaName</td>
<td>ParentAreaCode</td>
<td>Root</td>
<td>Zone</td>
</tr>
<?php
include("../dbda.class.php"); //引入数据库类
include("../page.class.php"); //引入分页类
$db= new dbda();
$sqlall = "select count(*) from chinastates ".$tj; //写sql语句,并拼上查询条件($tj 会在下面给出)
$attrall = $db->Query($sqlall);
$total = $attrall[0][0];
$page = new Page($total,20,$fytj,true);
$limit = $page->limit;
$sql = "select * from chinastates ".$tj.$limit; ////写sql语句,并拼上查询条件($tj 会在下面给出)
$attr = $db->Query($sql);
foreach($attr as $v)
{
echo "<tr>
<td>{$v[0]}</td>
<td>{$v[1]}</td>
<td>{$v[2]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
</tr>";
}
?>
</table>
<?php
echo "<div>".$page->fpage()."</div>"; //分页列表
?>

然后在上面加查询条框

1、如果用post方法传值:

<?php
$name = "";
$fytj = "";
if(!empty($_POST["name"])) //判断是否为空,也就是判断是否有提交值
{
$name = $_POST["name"];
$fytj = " name={$name}";
}
if(!empty($_GET["name"])) //判断是否为空,也就是判断是否有提交值
{
$name = $_GET["name"];
$fytj = " name={$name}";
}
$tj = " where AreaName like '%{$name}%' "; //查询条件
?>
<br />
<form action="text.php" method="post"> //用post方法传值
<div>
请输入:
<input type="text" name="name" value="" />
<input type="submit" value="查询" />
</div>
</form>

2、如果用get方法传值

<?php
$name = "";
$fytj = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
$fytj = " name={$name}";
}
if(!empty($_GET["name"]))
{
$name = $_GET["name"];
$fytj = " name={$name}";
}
$tj = " where AreaName like '%{$name}%' ";
?>
<br />
<form action="text.php" method="post">
<div>
请输入:
<input type="text" name="name" value="" />
<input type="submit" value="查询" />
</div>
</form>

这里需要注意的是:

1、如果用post方法传值时,构造分页对象时需要些4个参数

$page = new Page($total,20,$fytj,true);

而且要判断$_POST["name"]和$_GET["name"]是否为空

2、如果用get方法传值,则比较简单,构造分页对象时只需写两个参数

$page = new Page($total,20);

而且只需判断$_GET["name"]是否为空

PHP 分页+查询的更多相关文章

  1. JdbcTemplate+PageImpl实现多表分页查询

    一.基础实体 @MappedSuperclass public abstract class AbsIdEntity implements Serializable { private static ...

  2. 用Hibernate和Struts2+jsp实现分页查询、修改删除

    1.首先用get的方法传递一个页数过去 2.通过Struts2跳转到Action 3.通过request接受主页面index传过的页数,此时页数是1, 然后调用service层的方法获取DAO层分页查 ...

  3. MySQL、Oracle和SQL Server的分页查询语句

    假设当前是第PageNo页,每页有PageSize条记录,现在分别用Mysql.Oracle和SQL Server分页查询student表. 1.Mysql的分页查询: SELECT * FROM s ...

  4. 分页查询和分页缓存查询,List<Map<String, Object>>遍历和Map遍历

    分页查询 String sql = "返回所有符合条件记录的待分页SQL语句"; int start = (page - 1) * limit + 1; int end = pag ...

  5. mysql 分页查询

    mysql,; : mysql,; -last. //如果只给定一个参数,它表示返回最大的记录行数目: mysql; 个记录行 ,n. 动态传参的分页查询 SELECT * FROM table LI ...

  6. MongoDB 分页查询的方法及性能

    最近有点忙,本来有好多东西可以总结,Redis系列其实还应该有四.五.六...不过<Redis in Action>还没读完,等读完再来总结,不然太水,对不起读者. 自从上次Redis之后 ...

  7. .NET平台开源项目速览(7)关于NoSQL数据库LiteDB的分页查询解决过程

    在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部 ...

  8. SubSonic3.0插件分页查询速度测试

    使用SubSonic3.0一段时间了,一直都想找机会测试一下各种查询分页速度,对比一下插件的查询效率到底怎么样,所以昨天写好了测试程序,准备好1K.1W.10W.50W和100W记录的数据表,早上详细 ...

  9. Node.js、express、mongodb 实现分页查询、条件搜索

    前言 在上一篇Node.js.express.mongodb 入门(基于easyui datagrid增删改查) 的基础上实现了分页查询.带条件搜索. 实现效果 1.列表第一页. 2.列表第二页 3. ...

  10. 【原创】SQL分页查询存储过程

    ------------------------------------- -----作者:张欣宇 -----时间:2013-06-28 -----简介:根据参数和条件分页查询 ----------- ...

随机推荐

  1. win10下当前目录右键添加CMD快捷方式

    在某个文件夹下右键打开cmd,这样不用每次都在默认情况下切换目录.无奈win10 1703版本下shift+右键不能打开cmd,只能打开powershell. 首先,在桌面新建一个文本文档. Wind ...

  2. mysql float 精度丢失

    mysql 中保存了字段 float s=0.3 直接执行sql 查出来是 0.3 但是JPA 执行查询结果是 0.2999 换成decimal 就可以

  3. linux安装RabbitMQ yum

      一.RabbitMQ概念RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发 ...

  4. Spinner simpleAdapte适配器 下拉列表

    public class MainActivity extends AppCompatActivity { private TextView text; private Spinner spinner ...

  5. Mysql设置主库binlog文件自动清理

    mysql主库中设置了打开binlog模式后,会在datadir目录下生成大量的日志文件,mysql默认是不会自动清理的,我们来设置下mysql自动清理binlog文件 一.打开mysql [root ...

  6. java 权限控制

    网上或参考书中,对于java权限控制大多给出一张看似很整齐很好记实则不好理解的表格,我整理了一个2.0升级版,自认为会好理解很多,希望可以有所帮助. 同一包内 不同包内 修饰符 当前类 非当前类(含子 ...

  7. 牛客小白月赛12 D 月月给华华出题 (欧拉函数,数论,线筛)

    链接:https://ac.nowcoder.com/acm/contest/392/D 来源:牛客网 月月给华华出题 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 131072K, ...

  8. pycharm中如何让两个项目并存

    之前总是打开一个,另外一个没有了,来回切换还要找最近的project.十分麻烦. 1.File下拉项中选择Settings 2.Settings设置界面打开Project下拉列表,选择“Project ...

  9. 逻辑卷----LVM的基础和应用

    逻辑卷管理器 Logical Volume Manager-------逻辑卷宗管理器.逻辑扇区管理器.逻辑磁盘管理器,是Linux核心所提供的逻辑卷管理(Logical volume managem ...

  10. hdu 6065 RXD, tree and sequence

    题 OwO http://acm.hdu.edu.cn/showproblem.php?pid=6065 (2017 Multi-University Training Contest - Team ...