程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 用PHP實現ODBC數據分頁顯示一例

用PHP實現ODBC數據分頁顯示一例

編輯:關於PHP編程

$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); //關閉連接並釋放資源
?>


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved