开放数据库连接(ODBC)已成为一种与数据库进行通信的工业标准。PHP也提供了标准的接口,使得PHP能调用Access,SQL SERVER等数据库。其相关函数是: (1)integer odbc_connect(string dsn, string user, string password) 连接到一个ODBC数据库源名字上。 (2)integer odbc_exec(integer connection, string query)或 odbc_do(integer connection, string query) 在一个连接上执行查询。 (3)boolean odbc_fetch_row(integer result, integer row) 从一个结果集中获取一行数据。Row参数是可选的,若为空缺,则返回下一个有效行。在结果集中不再剩余行时返回false。 (4)boolean odbc_close(integer connection) 关闭一个数据库的连接。若在该连接上有打开的事务,则返回一个错误,而且连接不会被关闭。 最后,还是看个分页的例子: <? //设定每页显示条数 $show_num = 10; $spages = $pages;//避免$pages后期被改变 //定义连接 $dsn = "localhost"; $user = "sa"; $password = ""; //计算总记录数 $rs_num = "select count(*) as id from bbs where zu='0' and lei='".$lei."'"; $conn_id = odbc_connect($dsn,$user,$password); $rnum = odbc_exec($conn_id,$rs_num); while(odbc_fetch_row($rnum)){ $total_rs = odbc_result($rnum,"id");//将总记录数放入$total_rs变量 } //计算与页有关的条数 $nnn = $total_rs / $show_num;//计算总页数 $hnnn = intval($nnn);//将总页数取整 $cnnnn = $nnn - $hnnn; //计算所需总页数 switch ($cnnn){ case "0": $hnnn++; $nnn = $hnnn;//总页数 break; default : $nnn = $hnnn;//总页数 break; }; if ($nnn == 0)$nnn++; //计算页面改变所需的条件 $fore = $pages; $next = $pages; $fore -= 1; $next += 1; if ($fore > 0) { echo "<a>首页</a>"; echo "<a>前页</a>"; }; if ($pages < $nnn) { echo "<a>后页</a>"; echo "<a>尾页</a>"; }; echo "共".$nnn."页"; $query_string = "SELECT * FROM table where condition order by you wanted order"; $cur = odbc_exec($conn_id,$query_string); //取到循环的顶部 $cnum = ($pages-1) * $show_num;//计算当前的记录游标的位置 //空循环到显示记录游标处 if ($cnum != 0){ for ($i=0;$i<=$cnum;odbc_fetch_row($cur)){$i++;}; }; $i=1; //显示记录 while(odbc_fetch_row($cur)){ echo ; if ($i == $show_num){//在不满页数时跳出程序 break; }; $i++; }; //关闭连接 odbc_close($conn_id); ?> |