虽然以前作了很多应用软件,但是这个PHP WEB 程序还是做的乱七八糟。今天想想,不要赶进度,重新整理一下思路。
这个一个数据库程序 PHP+MYSQL,简单的 数据列表、新增、编辑、删除、搜索、分页等。
现在先说简单的,数据库方面比较好说:连接、执行SQL语句、取得返回数据集合、循环读取,基本都差不多 这个已经作了一个简单的类CLSDB
今天看到一个不错的数据库访问类 Adodb类库
adoDB中文手册:[url]http://www.moocky.net/Manual/adodb.gb.htm[/url]
ADODB官方: [url]http://adodb.sourceforge.net/[/url] [url]http://sourceforge.net/projects/adodb/[/url]
ADOdb is a PHP and Python database class library to hide the differences between the different databases so you can easily switch databases without changing the code.
PHP ADODB 1.99版手册中文翻译
翻译作者:Tripc
ADODB
PHP在资料库的支援上是很令人称道的,几乎所有的知名资料库系统都有对应的函数群支援,而且支援的很完整。但很不幸的,每一群资料库支援函数无论在名称或叁数结构上,都有很大的差异,这使得PHP的系统开发者在面临更换资料库时,总会觉得痛苦万分。难道这个问题就没有解决方法吗?呵呵,当然有,答案就是我现在要介绍的 ADODB 这个PHP物件。
ADODB提供了完整的方法和属性让工程师去控制资料库系统,更棒的是你只要记得它的功能就好了,因为不同的资料库系统,只要修改一个属性值就可以了,ADODB会自动依据设定取用正确的PHP函数。此外,最多再配合资料库系统修改修改SQL指令,你的PHP系统就可以在最短的时间内更换到另一个资料库系统了,如果在撰写程式时,对SQL指令能做妥善规划,那就更快了。
简介
由於PHP的资料库存取函数没有标准化,所以我们需要一组函数库或是类别来隐藏不同资料库函数介面间的差异,让我们可以很简单的去切换资料库,而这,就是ADODB的目的。
ADODB目前支援MySQL, Oracle, Microsoft SQL Server, Sybase, Sybase SQL Anywhere, Informix, PostgreSQL, FrontBase, Interbase (Firebird 及 Borland 版本), Foxpro, Access, ADO 和 ODBC。ADODB也有透过ODBC成功连结Progress及DB2的报告,我们希望能有更的人提供驱动介面来支援更多的资料库。
PHP4支援连结变数(session variables),使用者可以透过ADODB储存连结资讯,以达成真正的可携性及弹性,相关的用法及资讯请自行叁考ADOdb-session.php这个范例。
特色
对熟悉Windows的工程师而言,ADODB很容易使用,因为ADODB里的很多功能和Microsoft的ADO很像。
与其它的PHP资料库类别不同,它们大多集中在处理与 select 指令有关的东西,而ADODB对於 inserts 及 update 也提供额外的支援,并且可以很快的连结到多资料库。所提供的方法更扩及日期的掌握,字串的连结及字串标记字元差异处理(在某些资料库间字串的连结和标记符号是有差异的)
型别对照系统是内建的,所以我们可以设定或描述像CHAR,TEXT及STRING在不同的资料库间其实是相同的资料型别。
更容易去移植,因为所有与资料库相依的程式码被都隐藏在後端,所以使用者不再需要去移植类别里的逻辑。
支援 PHP4 连结变数,请叁考 ADOdb-session.php。
安装
首先要确定你所使用的PHP版本是 4.01pl2 或是之後的版本(因为ADODB使用到了 require_once及include_once两个函数)。解压缩全部的档案到你的Web伺服器可以存取的一个目录里。
<?php
if(!class_exists(clsdb))
require_once(“./adodb/ADOdb.inc.php”);
$conn = &ADONewConnection(‘mysql’); # create a connection
$conn->PConnect(‘localhost’,’root’,’123′,’bill’);# connect to MySQL, agora db
$sql = ‘select * from companys’;
$recordSet = $conn->Execute($sql);
if (!$recordSet)
print $conn->ErrorMsg();
else
while (!$recordSet->EOF)
{
print $recordSet->fields[0].’ ‘.$recordSet->fields[1].'<br />’;
$recordSet->MoveNext();
}
?>
>> ADODB Library for PHP4
(c) 2000-2004 John Lim (jlim at natsoft dot com.my)
Released under both BSD and GNU Lesser GPL library license. This means you can use it in proprietary products.
>> Introduction
PHP’s database access functions are not standardised. This creates a need for a database class library to hide the differences between the different databases (encapsulate the differences) so we can easily switch databases.
We currently support MySQL, Interbase, Sybase, PostgreSQL, Oracle, Microsoft SQL server, Foxpro ODBC, Access ODBC, Informix, DB2,Sybase SQL Anywhere, generic ODBC and Microsoft’s ADO.