首页 > 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=' . ($page1) . '">后页</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) * $pagesize1;
    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 = $rowi1;
        }
        echo '</tr>';
    }
    echo '</table>';
    odbc_free_result($rst); //释放资源
    
} else {
    echo "无数据";
}
odbc_close($con); //关闭连接并释放资源
?>


教程链接:http://www.phprm.com/develop/baba5ebe30c2670124cb4dc83c367487.html

随意转载~但请保留教程地址★

标签:none

发表留言