当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP调用三种数据库的方法(2)

PHP
PHP 开发环境的选择、建立及使用(5)
PHP 开发环境的选择、建立及使用(6)
PHP 开发环境的选择、建立及使用(7)
PHP 开发环境的选择、建立及使用(8)
PHP 开发环境的选择、建立及使用(9)
Win2003下APACHE PHP5 MYSQL4 PHPMYADMIN 的简易安装配置
PHP新手上路(八) 文件上传
PHP新手上路(九) 投票系统
PHP新手上路(十) 简易banner动态更替
PHP新手上路(十一) 数据库链接
PHP新手上路(十二)使用PHP来操作Oracle数据库
PHP新手上路(十三)PHP资源
PHP新手上路(十四) 其他杂项
session全教程(一)
session全教程(二)
session全教程(三)
PHP编码规范
第十五节--Zend引擎的发展 -- Classes and Objects in PHP5 [15]
第十四节--命名空间 -- Classes and Objects in PHP5 [14]
第十二节--类的自动加载 -- Classes and Objects in PHP5 [12]

PHP调用三种数据库的方法(2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 76 ::
收藏到网摘: n/a

开放数据库连接(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);

?>