分享

php最简单的分页 直接可用

 Be_The_Change 2014-01-13
首先:建立数据库chat
/*
Navicat MySQL Data Transfer

Source Server         : localhost_3306
Source Server Version : 50091
Source Host           : localhost:3306
Source Database       : chat

Target Server Type    : MYSQL
Target Server Version : 50091
File Encoding         : 65001

Date: 2013-03-26 16:00:08
*/

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `chat`
-- ----------------------------
DROP TABLE IF EXISTS `chat`;
CREATE TABLE `chat` (
  `chtime` datetime default NULL,
  `nick` char(10) NOT NULL,
  `words` char(150) default NULL,
  `face` int(11) default NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

-- ----------------------------
-- Records of chat
-- ----------------------------
INSERT INTO chat VALUES ('2013-03-21 04:15:14', 'smiling', '测试显示发言', '3');
INSERT INTO chat VALUES ('2013-03-21 04:46:26', 'smiling', '时间有问题,', '5');
INSERT INTO chat VALUES ('2013-03-21 04:47:28', 'php新手', '新手来了。', '1');
INSERT INTO chat VALUES ('2013-03-21 04:55:19', 'php新手', '显示正确啦', '6');
INSERT INTO chat VALUES ('2013-03-21 17:12:47', 'php新手', '正确显示时间', '5');
INSERT INTO chat VALUES ('2013-03-21 17:23:19', 'php新手', '时间显示正确。', '7');
INSERT INTO chat VALUES ('2013-03-21 17:23:29', 'php新手', '哈哈', '1');
INSERT INTO chat VALUES ('2013-03-22 08:28:00', '', '今天再来看看。', '3');

其次:
<meta http-equiv="content-type" content="text/html; charset=utf-8">  <!--规定浏览器显示规定编码-->
<?php  
$con=mysql_connect('localhost','root','') or die("无法连接到数据库");
mysql_select_db('chat',$con);
mysql_query("set names utf8",$con);



// 获取当前页数
if( isset($_GET['page']) ){
  $page = intval( $_GET['page'] );
}
else{
  $page = 1;

// 每页数量
$pageSize = 10; 

// 获取总数据量
$sql = "select count(*) as amount from chat";
$result = mysql_query($sql,$con);
$row = mysql_fetch_array($result);
$amount = $row['amount'];
//echo $amount;

// 记算总共有多少页
   if( $amount ){
if( $amount < $pageSize ){
$page_count = 1; 
 }               //如果总数据量小于$PageSize,那么只有一页

if( $amount % $pageSize ){                                  //取总数据量除以每页数的余数
$page_count = (int)($amount / $pageSize) + 1;           //如果有余数,则页数等于总数据量除以每页数的结果取整再加一
}else{
       $page_count = $amount / $pageSize;                      //如果没有余数,则页数等于总数据量除以每页数的结果
}

}
else{
  $page_count = 0;
}
//echo $page_count;die;

// 翻页链接
$page_string = '';
if( $page == 1 ){
  $page_string .= '第一页|上一页|';
}
else{
  $page_string .= '<a href=?page=1>第一页</a>|<a href=?page='.($page-1).'>上一页</a>|';
if( ($page == $page_count) || ($page_count == 0) ){
  $page_string .= '下一页|尾页';
}
else{
  $page_string .= '<a href=?page='.($page+1).'>下一页</a>|<a href=?page='.$page_count.'>尾页</a>';
}
// 获取数据,以二维数组格式返回结果
if( $amount ){
$sql = "select * from chat order by chtime desc limit ". ($page-1)*$pageSize .",".$pageSize;
//echo $sql;die;
$result = mysql_query($sql,$con);
echo "<table border='1' align='center' width='80%'>";
while ( $row = mysql_fetch_array($result) ){
       echo "<tr>";
echo "<td>".$row['chtime']."</td>";
echo "<td>".$row['nick']."</td>";
echo "<td>".$row['words']."</td>";
echo "<td>".$row['face']."</td>";
echo "</tr>";
}
echo "<tr>";
echo "<td colspan=4 align='center'>";
echo $page_string;
echo "</td>";
echo "</tr>";
echo "</table>";
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多