PHP脚本数据库功能详解(下)


Posted in PHP onOctober 09, 2006

用类加快PHP的数据库开发

数据库的访问函数较多,使用不当会降低效率,甚至导致错误。而PHP的本身就是开放的和可扩充的,很多人为它开发各种功能的源代码。每一个PHP程序员都应该善于继承他人的成果,节省时间和精力。站在巨人的肩膀上,才能看得更远。当然,你也可以把你的代码共享出来,体会自己的劳动被承认和创造价值而带来的成就感。

使用数据库类,可以使我们完全不必考虑具体的数据库类型,而专注于程序的开发上。

众多的开发工具包中,PHPLib是性能较稳定、功能较完善的一个。PHPLib可以在http://phplib.netuse.de/ 获得。它包含了数据库的支持类。以MySQL数据库为例,PHPLib自带名为DB_Sql的类。它包装了数据库的连接、查询、取结果、数据库表的遍历等功能。

使用数据库类,可以使我们完全不必考虑具体的数据库类型,而专注于程序的开发上。即使数据库系统类型换了,程序代码也不用改。同时,数据库类提供了完整而健壮的数据库访问方法,这可能是使用类的包装的最大的优势了。

下面,我们就使用PHPLib提供的数据库类,来访问我们刚才建立的数据库,并对内容进行显示。

〈?

require "db_mysql.php";

//包含数据库类的生成文件

$db=new DB_Sql;

//声明数据库类的实例

$db-〉connect("ResumeDB","localhost", "root", "");

//连接数据库服务器

//提供的参数依次为:数据库名,主机名,用户名,用户密码

if ($db-〉Link_ID)

//判断是否正确建立连接

{

$db-〉query("select ID,Name,Intro FROM Resume");

//查询

if ($db-〉nf())

//判断结果集是否为空

{

while ($db-〉next_record())

//取得下一行记录值,直到记录集内容取完

{

echo "ID:", $db-〉f("ID"); //f()函数返回当前记录某个子段的值

echo "〈br〉";

echo "姓名:";

$db-〉p("Name");

//p()函数直接打印某个子段的值

//等价于echo $db-〉f("name")

echo "〈br〉";

echo "简介:";

echo $db-〉f("Intro");

echo "〈br〉";

echo "〈a href= "download.php?ID=".$db-〉f("ID").""〉查看Word文档〈/a〉";

echo "〈br〉〈hr〉";

}

}

$db-〉free ();

//释放资源

}

?〉

从上面的流程可以看出,用类访问数据库的方法和直接访问数据库的方法基本相同。不同的是,这里我们调用的方法都是类的方法,而不是具体针对某种数据库的函数。由于代码和具体数据库类型的分离,使得当数据库系统改变的时候,我们不用改变程序代码,只要改变基类的实现方法即可。

如果结合使用PHPLib模板进行设计的话,即可实现程序与显示的分离。也将使得程序结构清晰,网页美工设计制作方便。

简便的用法、合理的任务分配、合乎思维的对象包装,将使得网站开发效率大大提高。

附:代码测试平台

以上程序代码全部在下面的平台测试通过

RedHat Linux 6.1+Apache1.3.12+

PHP4.0+MySql3.22.32

数据库的安装配置过程为:

cd /usr/local/src/mysql*

./configure --refix=/usr/local/mysql

make

make install

Apache的安装配置过程为:

cd /usr/local/src/apache*

./configure --prefix=/usr/local/apache --enable-shared=max

make

make install

PHP的安装配置过程为:

cd /usr/local/src/php*

./configure --with-apxs=/usr/local/apache/bin/apxs  

--with-config-file-path=/usr/local/

apache/conf  

--with-mysql=/usr/local/mysql  

--enable-debug=no  

--enable-track-vars

php.ini配置过程为:

拷贝php.ini-dist到/usr/local/

apache/conf/php.ini

编辑httpd.conf,把下面两行的注释去掉

AddType application/x-httpd-php .php .php3

AddType application/x-httpd-php-source .phps

<<全文完>>

PHP 相关文章推荐
支持oicq头像的留言簿(一)
Oct 09 PHP
PHP+MYSQL 出现乱码的解决方法
Aug 08 PHP
PHP 服务器配置(使用Apache及IIS两种方法)
Jun 01 PHP
php 魔术函数使用说明
Feb 21 PHP
PHP SEO优化之URL优化方法
Apr 21 PHP
php一个找二层目录的小东东
Aug 02 PHP
php实现贪吃蛇小游戏
Jul 26 PHP
PHP会话控制实例分析
Dec 24 PHP
实例解析php的数据类型
Oct 24 PHP
PHP CURL中传递cookie的方法步骤
May 09 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
Oct 22 PHP
详细分析PHP7与PHP5区别
Jun 26 PHP
PHP脚本数据库功能详解(中)
Oct 09 #PHP
PHP脚本数据库功能详解(上)
Oct 09 #PHP
屏蔽浏览器缓存另类方法
Oct 09 #PHP
使用网络地址转换实现多服务器负载均衡
Oct 09 #PHP
php抓即时股票信息
Oct 09 #PHP
利用PHP动态生成VRML网页
Oct 09 #PHP
一个SQL管理员的web接口
Oct 09 #PHP
You might like
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
PHP_Cooikes不同页面无法传递的解决方法
2014/03/07 PHP
Codeigniter的一些优秀特性总结
2015/01/21 PHP
php unicode编码和字符串互转的方法
2020/08/12 PHP
asp(javascript)全角半角转换代码 dbc2sbc
2009/08/06 Javascript
jQuery探测位置的提示弹窗(toolTip box)详细解析
2013/11/14 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
2015/10/09 Javascript
基于javascript实现彩票随机数生成(简单版)
2020/04/17 Javascript
javascript自动恢复文本框点击清除后的默认文本
2016/01/12 Javascript
修改js confirm alert 提示框文字的简单实例
2016/06/10 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
新版小程序登录授权的方法
2018/12/12 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
2019/03/07 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
JavaScript中while循环的基础使用教程
2020/08/11 Javascript
Python标准库内置函数complex介绍
2014/11/25 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
python如何实现内容写在图片上
2018/03/23 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
django 在原有表格添加或删除字段的实例
2018/05/27 Python
Django中日期处理注意事项与自定义时间格式转换详解
2018/08/06 Python
python pandas库的安装和创建
2019/01/10 Python
Django分页功能的实现代码详解
2019/07/29 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
2019/08/09 Python
html5图片上传预览示例分享
2014/04/14 HTML / CSS
html5中 media(播放器)的api使用指南
2014/12/26 HTML / CSS
MIRTA官网:手工包,100%意大利制造
2020/02/11 全球购物
说出数据连接池的工作机制是什么?
2013/04/19 面试题
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
公安四风对照检查材料思想汇报
2014/10/11 职场文书
给客户的检讨书
2014/12/21 职场文书
项目验收申请报告
2015/05/15 职场文书
消夏晚会主持词
2015/06/30 职场文书
《确定位置》教学反思
2016/02/18 职场文书