开放数据库连接(ODBC)已成为一种与数据库进行通信的工业标准。PHP也提供了标准的接口,使得PHP能调用Access,SQLSERVER等数据库。其相关函数是:
(1)integerodbc_connect(stringdsn,stringuser,stringpassword)
连接到一个ODBC数据库源名字上。
(2)integerodbc_exec(integerconnection,stringquery)或odbc_do(integerconnection,stringquery)
在一个连接上执行查询。
(3)booleanodbc_fetch_row(integerresult,integerrow)
从一个结果集中获取一行数据。Row参数是可选的,若为空缺,则返回下一个有效行。在结果集中不再剩余行时返回false。
(4)booleanodbc_close(integerconnection)
关闭一个数据库的连接。若在该连接上有打开的事务,则返回一个错误,而且连接不会被关闭。
最后,还是看个分页的例子:
<?
//设定每页显示条数
$show_num=10;
$spages=$pages;//避免$pages后期被改变
//定义连接
$dsn="localhost";
$user="sa";
$password="";
//计算总记录数
$rs_num="selectcount(*)asidfrombbswherezu='0'andlei='".$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*FROMtablewhereconditionorderbyyouwantedorder";
$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);
?>