PHP如何透过ODBC来存取数据库


Posted in PHP onOctober 09, 2006

使用的环境
先建立一个测试用的数据库
接着建立一个ODBC连结
再建个测试用的PHP Script
咱们来测试吧
使用的环境

本文件主要是在Win32的环境下作说明, 您需要的是台跑Windows 9x/NT/2000的计算机, 并装有任何一种web server和PHP3或PHP4, 且可正确执行PHP Script. 并有一种以上的SQL数据库软件, 例如:Access...

本文件以MS-Access数据库来作说明, 其它种的数据库端, 皆可以类似的方法来作ODBC连结.

先建立一个测试用的数据库

进入MS-Access, 建立一个odbctest.mdb的档案.
开始建立一个数据表(table).
此数据表我们给它两个字段: id 和 name.

将此资料表命名为 Class .

接着我们输入一些数据.例如:


接着建立一个ODBC连结
开启 控制台 里的 "ODBC 数据来源" .


选择 "系统数据来源名称" 页.
点选 "新增..." 按钮.
选择你想使用的 ODBC 驱动程序. 在此请选择 "Microsoft Access Driver", 当然若您使用其它种的数据库端, 就选择该数据库的ODBC Driver.
点选 "完成" 按钮.
接着会出现这个窗口, 来作进一步的设定.

输入数据来源名称为 "WebDB" . 描述的部分可以随便输入, 自己了解就可以了.
按 "选取..." 钮, 输入您欲连结的数据库档案位置. 例如: 这里的 c:\odbctest.mdb
接着再点选 "进阶..." 钮. 会出现这个画面:

您需要输入的部分是 : 登入名称和密码, 在此我们先分别设成 'webuser' 和 'webpassword'.
OK了. ODBC的设定部分已经完成了.
再建个测试用的PHP Script
以下是个测试用的PHP Script内容, 请将它save起来, 例如存到您web server的文件根目录.
<?
function Error_Handler( $msg, $cnx )
{
    echo "$msg \n";
        // 为避免占用连结, 在程序结束前close掉是很重要的.
    odbc_close( $cnx);
    exit();
}

    // 建立一个 ODBC 连结, 传回至 $cnx
    $cnx = odbc_connect( 'WebDB' , 'webuser', 'webpassword' );

//    在测试时若有权限上问题, 也许你可以使用 superadmin 来存取 :
//    $cnx = odbc_connect( 'WebDB' , [sa login] , [sa password] );

    if( ! $cnx ) {
        Error_handler( "在 odbc_connect 有错误发生" , $cnx );
    }

    // 送出一个简单的 odbc query . 传回一个 odbc 指标
    $cur= odbc_exec( $cnx, "select id,name from Class" );
    if( ! $cur ) {
        Error_handler( "在 odbc_exec 有错误发生( 没有指标传回 ) " , $cnx );
    }

    echo "<table border=1><tr><th>座号</th><th>姓名</th></tr>\n";
    $num_row=0;

        // 取出成功传回的数据
    while( odbc_fetch_row( $cur ) )
    {
        $num_row++;
            // 抓取 "id" 字段的数据
        $id= odbc_result( $cur, 1 );
            // 抓取 "name"字段的数据
        $name= odbc_result( $cur, 2 );
        echo "<tr><td>$id</td><td>$name</td></tr>\n";
    }

    echo "<tr><td colspan=2>共 $num_row 人 </td></tr></table>";

    odbc_close( $cnx);

?>

咱们来测试吧

从您的网页浏览器, 开启浏览这个测试用的PHP Script.

如果一切正确无误的话, 您应该可以看到以下的数据:

座号 姓名
1 Ernest
2 Norman
3 PHP/Zend RC
4 ODBCCooler
5 我是五号
6 六号就是我
共 6 人  

PHP 相关文章推荐
php动态生成JavaScript代码
Mar 09 PHP
PHP用GD库生成高质量的缩略图片
Mar 09 PHP
关于PHP二进制流 逐bit的低位在前算法(详解)
Jun 13 PHP
ThinkPHP之用户注册登录留言完整实例
Jul 22 PHP
php求一个网段开始与结束IP地址的方法
Jul 09 PHP
浅谈使用PHP开发微信支付的流程
Oct 04 PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
Apr 28 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
Apache PHP MySql安装配置图文教程
Aug 27 PHP
浅析PHP类的反射来实现依赖注入过程
Feb 06 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
使用Zookeeper分布式部署PHP应用程序
Mar 15 PHP
在线短消息收发的程序,不用数据库
Oct 09 #PHP
PHP网站提速三大“软”招
Oct 09 #PHP
用PHP发电子邮件
Oct 09 #PHP
基于qmail的完整WEBMAIL解决方案安装详解
Oct 09 #PHP
一段php加密解密的代码
Oct 09 #PHP
PHP开发文件系统实例讲解
Oct 09 #PHP
用PHP读取IMAP邮件
Oct 09 #PHP
You might like
利用js调用后台php进行数据处理原码
2006/10/09 PHP
深入浅析PHP7.0新特征(五大新特征)
2015/10/29 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
2016/11/05 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
2019/02/28 PHP
关于document.cookie的使用javascript
2008/04/11 Javascript
Jquery实现无刷新DropDownList联动实现代码
2010/03/08 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
10条建议帮助你创建更好的jQuery插件
2015/05/18 Javascript
jQuery实现右键菜单、遮罩等效果代码
2016/09/27 Javascript
js中的DOM模拟购物车功能
2017/03/22 Javascript
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
微信小程序实现tab页面切换功能
2018/07/13 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
vue相同路由跳转强制刷新该路由组件操作
2020/08/05 Javascript
夯基础之手撕javascript继承详解
2020/11/09 Javascript
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
python 输出一个两行字符的变量
2009/02/05 Python
python记录程序运行时间的三种方法
2017/07/14 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
Python如何使用内置库matplotlib绘制折线图
2020/02/24 Python
html+js 实现markdown编辑器效果
2019/10/23 HTML / CSS
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
计算机专业自我鉴定
2013/10/15 职场文书
医学院四年学习生活的自我评价
2013/11/06 职场文书
男方父母婚礼答谢词
2014/01/25 职场文书
护士的自我鉴定
2014/02/07 职场文书
艾滋病宣传活动总结
2014/05/08 职场文书
学习三严三实对照检查材料思想汇报
2014/09/22 职场文书
北京爱情故事观后感
2015/06/12 职场文书
《秦兵马俑》教学反思
2016/02/24 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
python编程简单几行代码实现视频转换Gif示例
2021/10/05 Python
python保存图片的四个常用方法
2022/02/28 Python