怎样用php+mysql存储过程,并在php页面里显示首页 第一页 下一页 末页?

本文介绍了一个自定义分页组件的设计与实现过程,详细解释了如何通过构造函数初始化分页参数,设置显示条件及传递参数,同时展示了如何定制分页导航条的显示样式,并提供了读取记录的主要工作函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

class TViewPage
 {
  var $Table;    //表名
  var $MaxLine=15;  //每页显示行数  
  var $Offset;   //记录偏移量
  var $Total;    //记录总数
  var $Number;   //本页读取的记录数
  var $Result;   //读出的结果  
  var $TPages;   //总页数
  var $CPages;   //当前页数  
  var $Condition;   //数据库搜索条件
  var $PageQuery;   //分页显示要传递的参数
  
  var $strPageFrist = '首页';  //设置导航条翻页提示符
  var $strPagePrev = '上页';
  var $strPageNext = '下页';
  var $strPageLast = '末页';
  
  var $strDispPageFrist;  //设置导航条翻页(未激活状态)提示符
  var $strDispPagePrev;  //如果不设置,导航条将不区别显示激活与否
  var $strDispPageNext;  //本项配合图形可获得最佳效果
  var $strDispPageLast;
  
  //******构造函数*************
  //参数:表名、最大行数、偏移量
  function TViewPage($TB,$ML,$OF)
  {
   $this->Table = $TB;
   $this->MaxLine = $ML;
   $this->Offset = (floor($OF/$ML)) * $ML;
  }
  
  //********设置显示条件*********
  //如:where id="$id" order by id desc
  //要求是字串,符合SQL语法(本字串将加在SQL语句后)
  function setCondition($s)
  {
   $this->Condition=$s;
  }
  
  //******设置传递参数************
  // key参数名 value参数值
  // 如:setpagequery("id",$id);如有多个参数要传递,可多次调用本函数
  function setPageQuery($key,$value)
  {
   $tmp[key]=$key;$tmp[value]=$value;
   $this->PageQuery[]=$tmp;
  }
  
  //********设置导航条分页显示的字符或图形*********
  //如:首页 或 <IMG SRC=frist.gif ALIGN=absmiddle> 等。
  //要求是字串,符合HTML语法显示的要求
  //如果不设置,导航条使用默认字符
  function setPageFrist($s,$sd="")
  {
   $this->strPageFrist=$s;
   $this->strDispPageFrist=$sd;
  }
  function setPagePrev($s,$sd="")
  {
   $this->strPagePrev=$s;
   $this->strDispPagePrev=$sd;
  }
  function setPageNext($s,$sd="")
  {
   $this->strPageNext=$s;
   $this->strDispPageNext=$sd;
  }
  function setPageLast($s,$sd="")
  {
   $this->strPageLast=$s;
   $this->strDispPageNext=$sd;
  }
  
  //********读取记录***************
  // 主要工作函数,根据所给的条件从表中读取相应的记录
  // 返回值是一个二维数组,Result[记录号][字段名]
  function getRecords()
  {
   $SQL="SELECT Count(*) AS total FROM ".$this->Table." ".$this->Condition;
   $result=mysql_query($SQL) or die(mysql_error());
   $row=mysql_fetch_Array($result);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值