当前位置:编程学习 > php >>

用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> </td>;
         }
      }
      else{
         odbc_fetch_into($rst,$rowi,&$row);
         for($j=0;$j<$fieldcount;$j++){
            $field = $row[$j];
            if($field==) $field =  ;
            echo <td> . $field  . </td>;
         }
         $rowi = $rowi+1;
      }
      echo </tr>;
   }
   echo </table>;
   
   odbc_free_result($rst); //释放资源
}
else{
   echo "无数据";
}

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


补充:Web开发 , php ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,