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

PHP
mysql5的sql文件导入到mysql4的方法
sqlyog 中文乱码问题的设置方法
PHP CURL函数库
PHP 面向对象改进后的一点说明
攻克CakePHP系列一 连接MySQL数据库
CakePHP去除默认显示的标题及图标的方法
攻克CakePHP系列二 表单数据显示
攻克CakePHP系列三 表单数据增删改
smarty的保留变量问题
PHP syntax error, unexpected $end 错误的一种原因及解决
如何使用PHP编程说明
php合并数组array_merge函数运算符加号与的区别
php初学者写及时补给skype用户充话费的小程序
MySql 按时间段查询数据方法(实例说明)
Php Cookie的一个使用注意点
PHP程序61条面向对象分析设计的经验小结
令PHP初学者头疼十四条问题大总结
mysql limit查询优化分析
使用Limit参数优化MySQL查询的方法
方便实用的PHP生成静态页面类(非smarty)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 189 ::
收藏到网摘: 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);

?>