快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用PHP实现ODBC数据分页显示一例

$pagesize = 2; //一页显示记录数

$con = odbc_connect("access_test","","",SQL_CUR_USE_ODBC) or die("无法连接ODBC数据源access_test"); //连接一个ODBC数据源
$sql = "select count(*) as total from test"; //取得记录总数SQL语句
$rst = odbc_exec($con,$sql) or die("$sql查询出错"); //执行取得记录总数SQL语句
$recordcount = odbc_result($rst,1); //取得记录总数,在这里也可以用$recordcount = odbc_result($rst,"total");
odbc_free_result($rst); //释放资源

$pagecount = bcdiv($recordcount+$pagesize-1,$pagesize,0); //算出总页数

if(!isset($page)) $page = 1; //假如没有指定显示页码,缺省为显示第一页
if($page<1) $page = 1; //假如页码比1小,则显示第一页
if($page>$pagecount) $page = $pagecount; //假如页码比总页数大,则显示最后一页

if($page>0){ //页码比0大,表示有数据
   echo \\'>> 分页 \\';
   echo \\'<a href="\\' . $PHP_SELF . \\'?page=1">首页</a> \\';
   if($page>1){
      echo \\'<a href="\\' . $PHP_SELF . \\'?page=\\'. ($page-1) . \\'">前页</a> \\';
   }
   else{
      echo \\'前页 \\';
   }
   if($page<$pagecount){
      echo \\'<a href="\\' . $PHP_SELF . \\'?page=\\'. ($page+1) . \\'">后页</a> \\';
   }
   else{
      echo \\'后页 \\';
   }
   echo \\'<a href="\\' . $PHP_SELF . \\'?page=\\' . $pagecount . \\'">尾页</a> \\';
   echo \\'页次: \\' . $page . \\'/\\' . $pagecount . \\'页 \\';
   echo $pagesize . \\'条/页 \\';
   echo \\'共\\' . $recordcount . \\'条 \\';
   
   $sql = "select * from test"; //取得数据SQL语句
   $rst = odbc_exec($con,$sql) or die("$sql查询出错"); //执行取得数据SQL语句
   
   $fieldcount = odbc_num_fields($rst); //取得字段总数
   
   echo \\'<table border="1" cellspacing="0" cellpadding="0">\\';
   echo \\'<tr>\\';
   for($i=1;$i<=$fieldcount;$i++){
      echo \\'<th>\\' . odbc_field_name($rst,$i) . \\'</th>\\'; //显示第$i个字段名
   }
   echo \\'</tr>\\';
   $rowi = ($page-1)*$pagesize+1;
   for($i=0;$i<$pagesize;$i++){
      echo \\'<tr>\\';
      if($rowi>$recordcount){
         for($j=0;$j<$fieldcount;$j++){
            echo \\'<td>&nbsp;</td>\\';
         }
      }
      else{
         odbc_fetch_into($rst,$rowi,&$row);
         for($j=0;$j<$fieldcount;$j++){
            $field = $row[$j];
            if($field==\\'\\') $field = \\'&nbsp;\\';
            echo \\'<td>\\' . $field  . \\'</td>\\';
         }
         $rowi = $rowi+1;
      }
      echo \\'</tr>\\';
   }
   echo \\'</table>\\';
   
   odbc_free_result($rst); //释放资源
}
else{
   echo "无数据";
}

odbc_close($con); //关闭连接并释放资源
?>



返回类别: 教程
上一教程: PHP的开合式多级菜单程序
下一教程: 如何在PHP中使用Oracle数据库(5)

您可以阅读与"用PHP实现ODBC数据分页显示一例"相关的教程:
· 例子:用PHP3实现MySQL数据的分页显示
· Php+SqlServer实现分页显示
· PHP+MySQL下分页显示的实现
· 我写的一个用PHP+MYSQL轻松实现论坛里的分级+分页显示的例程!(很具体的哦!虽然效率不是最佳,却非...
· 用PHP和SQL Sever实现分页显示
    微笑服务 优质保证 索取样品