转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> MySql >> 正文
PHP+MySql分页显示示例分析         ★★★★

PHP+MySql分页显示示例分析

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1376 更新时间:2009/4/22 20:48:44

PHP+MySql分页显示示例分析

作者:tigerwen01 

Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个重要组成部分,在这里,我们共同来研究分页程序的编写。

一、分页程序的原理

分页程序有两个非常重要的参数:每页显示几条记录($pagesize)和当前是第几页($page)。有了这两个参数就可以很方便的写出分页程序,我们以MySql数据库作为数据源,在mysql里如果要想取出表内某段特定内容可以使用的       T-SQL语句:select * from table limit offset,rows来实现。这里的offset是记录偏移量,它的计算方法是offset=$pagesize*($page-1)rows是要显示的记录条数,这里就是$page。也就是说select * from table limit 10,10这条语句的意思是取出表里从第11条记录开始的20条记录。

二、主要代码解析

$pagesize=10; //设置每一页显示的记录数

$conn=mysql_connect("localhost","root",""); //连接数据库

$rs=mysql_query("select count(*) from tb_product",$conn); //取得记录总数$rs

$myrow = mysql_fetch_array($rs);

$numrows=$myrow[0];

//计算总页数

$pages=intval($numrows/$pagesize);

//判断页数设置

if (isset($_GET[''''page''''])){

       $page=intval($_GET[''''page'''']);

       }

else{      

$page=1; //否则,设置为第一页

}

三、创建用例用表myTable

create table myTable(id int NOT NULL auto_increment,news_title varchar(50),news_cont text,add_time datetime,PRIMARY KEY(id))

四、完整代码

<html>

<head>

<title>php分页示例</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">          

</head>

 

<body>

<?php

$conn=mysql_connect("localhost","root","");

//设定每一页显示的记录数

$pagesize=1;

mysql_select_db("mydata",$conn);

//取得记录总数$rs,计算总页数用

$rs=mysql_query("select count(*) from tb_product",$conn);

$myrow = mysql_fetch_array($rs);

$numrows=$myrow[0];

//计算总页数

$pages=intval($numrows/$pagesize);

if ($numrows%$pagesize)

$pages++;

//设置页数

if (isset($_GET[''''page''''])){

       $page=intval($_GET[''''page'''']);

       }

else{

//设置为第一页      

$page=1;

}

//计算记录偏移量

$offset=$pagesize*($page - 1);

//读取指定记录数

       $rs=mysql_query("select * from myTable order by id desc limit $offset,$pagesize",$conn);

       if ($myrow = mysql_fetch_array($rs))

{

$i=0;

?>

<table border="0" width="80%">

&nb

[1] [2]  下一页


[MySql]PHP存取 Mysql 数据乱码终极解决方案  [MySql]解决Table xxx is marked as crashed and should …
[MySql][MySQL]快速解决"is marked as crashed and shoul…  [MySql]MySQL DELETE语法用法详解
[MySql]mysql中时间日期格式化  [MySql]修改mysql导入文件大小限制
[其他]MySql常用命令大全  [Web开发]把ACCESS的数据导入到Mysql中的方法详解
[MySql]解决mysql 1040错误Too many connections的方法  [系统软件]利用crontab系统每天定时备份MySQL数据库
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台