我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 网络学院 > 网络编程 > PHP专区 > php应用/技巧 > 实现强大的翻页跳转功能(一)
热门文章排行
热门文章排行 检查email地址格式的代码(01-11)
PHP操作文件问答(01-11)
PHP安装攻略:安装并配置PHP(10-23)
PHP的十个高级技巧 4(10-23)
PHP控制语句(10-12)
精采文章排行
精采文章排行 PHP连接MYSQL的两种方法(11-15)
PHP和MySQL开发的8个技巧(10-23)
PHP安装攻略:安装并配置PHP(10-23)
php+mysql扎实个人基本功(10-23)
PHP编程常用技巧四则(10-23)
技术专题推荐
网管论坛交流
 

实现强大的翻页跳转功能(一) 

作者:佚名   来源:本站教程   点击:   日期:2007-01-11

我们都知道用 php+mysql 在 web 页实现数据库资料全部显示是非常简单而有趣的,数据库资料很少的情况下页面显示还是让人满意的,但是当数据库资料非常多的情况下,页面的显示情况将会变的非常糟糕,下面就来介绍一下如何实现当前页面数据资料显示数量及如何实现动态的翻转功能.

这里将介绍两种翻页显示功能的实现:
-----------------------------------------------------------
先介绍一下在翻页中用到的数据库语法:

mysql_query("select * from table order by id desc");

这条数据库语句再熟悉不过了,是用来搜索记录并倒序地显示出来,但并不能在翻页功能中起作用,而下面这个扩展了的语法才是实现翻页的核心功能:

mysql_query("select * from table order by id desc limit $start,$limit");

这里的 $start 是数据库搜索的起始行,$limit 是从起始行开始搜索到 $limit 条记录结束,好了,有了这个核心功能后,我们可以开始翻页功能了;
-----------------------------------------------------------
第一种翻页功能:
这里介绍的功能是翻页功能中最简单的一种,只能实现向前翻页和向后翻页,本站的非常新闻和下载中心的翻页功能就是这种.

先介绍翻页功能实现的思路:
先确定当前页固定显示的数据记录数量,假设为 20 条记录,设定 $limit 的值为 20: $limit=20;

显示数据库记录时,必须是从第一条开始显示,所以这里设置 $start 的初始值为 0:$start=0;

而翻页功能的实现依赖 $start 的动态变化,当向后翻页时 $start 规律地加上 $limit:$start+$limit;而向前翻页时 $start 则规律地减去 $limit:$start-$limit;

有了以上的思路后,可以开始设计程序了 page.php:

<?
//设置当前页显示的数量(这个数量可任意设置)
$limit=20;

//初始化数据库搜索起始记录
if (!empty($start)) $start=0;

mysql_connect("localhost","","");
mysql_select_db(database);

//设置数据库记录总数
$result=mysql_query("select * from table");
$num_max=mysql_numrows($result);

$result=mysql_query("select * from table order by id desc limit $start,$limit);
$num=mysql_numrows($result);

echo "<table><tr><td>翻页功能</td></tr>";

if (!empty($num)) {
for ($i=0;$i<$num;$i++) {
$val=mysql_result($result,$i,"val");
$val1=mysql_result($result,$i,"val1");
echo "<tr><td>$val</td><td>$val1</td></tr>";
}
}

echo "<tr><td>";

//设置向前翻页的跳转
$prve=$start-$limit;
if ($prve>=0) {
echo "<a href=page.php?start=$prve>prve</a>";
}

//设置向后翻页的跳转
$next=$start+$limit;
if ($next<$num_max) {
echo "<a href=page.php?start=$next>next</a>";
}

echo "</td></tr></table>";
?>

一个前翻,后翻功能的程序完成了.但这个功能对处理更多资料显示时,将会显得很累赘.下面将会继续介绍功能更强大,更加复杂的翻页功能--循环翻页(我一直都这么叫,因为找不到更合适的叫法).:)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·将OICQ数据转成MYSQL数据 ·用PHP实现ODBC数据分页显示一例
·php生成WAP页面 ·PHP与Javascript的两种交互方式
·PHP+Javascript模拟Matrix画面 ·WHOIS类的修改版

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。