先介绍一下在翻页中用到的数据库语法

我们都知道用 php (做为现在的主流开发语言) +MySQL (和PHP搭配之最佳组合)  在 web 页实现数据库资料全部显示是非常简单而有趣的,数据库资料很少的情况下页面显示还是让人满意的,但是当数据库资料非常多的情况下,页面的显示情况将会变的非常糟糕,下面就来介绍一下如何实现当前页面数据资料显示数量及如何实现动态的翻转功能. 
  
   这里将介绍两种翻页显示功能的实现: 
  ----------------------------------------------------------- 
  先介绍一下在翻页中用到的数据库语法: 
  
  MySQL (和PHP搭配之最佳组合) _query("select * from table order by id desc"); 
  
  这条数据库语句再熟悉不过了,是用来搜索记录并倒序地显示出来,但并不能在翻页功能中起作用,而下面这个扩展了的语法才是实现翻页的核心功能: 
  
  MySQL (和PHP搭配之最佳组合) _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 (和PHP搭配之最佳组合) _connect("localhost","",""); 
  MySQL (和PHP搭配之最佳组合) _select_db(database); 
  
  //设置数据库记录总数 
  $result=MySQL (和PHP搭配之最佳组合) _query("select * from table"); 
  $num_max=MySQL (和PHP搭配之最佳组合) _numrows($result); 
  
  $result=MySQL (和PHP搭配之最佳组合) _query("select * from table order by id desc limit $start,$limit); 
  $num=MySQL (和PHP搭配之最佳组合) _numrows($result); 
  
  echo ""; 
  
  if (!empty($num)) { 
  for ($i=0;$i<$num;$i++) { 
  $val=MySQL (和PHP搭配之最佳组合) _result($result,$i,"val"); 
  $val1=MySQL (和PHP搭配之最佳组合) _result($result,$i,"val1"); 
  echo ""; 
  } 
  } 
  
  echo "
翻页功能
$val$val1
"; 
  
  //设置向前翻页的跳转 
  $prve=$start-$limit; 
  if ($prve>=0) { 
  echo "prve"; 
  } 
  
  //设置向后翻页的跳转 
  $next=$start+$limit; 
  if ($next<$num_max) { 
  echo "next"; 
  } 
  
  echo "
"; 
  ?> 
  

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

http://zhidao.baidu.com/question/1818998413754974628.html?uid=4CE5FB1E8FDFB91410695B1FD3B01D68

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值