$conn = new com("ADODB.Connection"); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath("www.jb51.net/db.mdb"); //与access连接要用到com接口了。 $conn->Open($connstr); $rs = new com("ADODB.RecordSet"); //数据查询并显示出来 $rs->Open("select * from szd_t",$conn,1,1); while(! $rs->eof) { $f = $rs->Fields(1); echo $f->value; $rs->MoveNext(); } //下面来看一下php access数据库教程保存 $sql ="insert into szd_t(title)values('www.jb51.net')"; $rs->Open( $sql ); echo '保存成功'; //php access数据库编辑 $sql ="Update szd_t set title='jb51.net' where id=".$_GET['id']; $rs->Open( $sql ); echo '编辑成功'; //删除数据 $sql ="delete from szd_t where id=".$_GET['id'];
PHP가 Access 데이터베이스에 연결하는 세 가지 방법
최근에 ASP 웹사이트를 PHP로 변경하려고 했는데 아쉽게도 해당 공간이 mysql 데이터베이스를 지원하지 않아서 access 데이터베이스를 사용해야 했는데, php+를 사용하려면 mysql, php+access 데이터베이스 프로그래밍을 해본 적이 없습니다.
파티에도 감사하고, cctv에도 감사하고, 여기서는 좋은 글을 못찾아서 글 남깁니다.
PHP에서 Access 연결하기 다음과 같은 3가지 방법이 있습니다.
(1) 시스템 데이터 소스를 생성하려면 PHP에서 제공하는 ODBC 함수를 사용하세요.
(2) PHP의 ODBC 기능을 사용할 수도 있지만 데이터 소스를 생성하지 마세요.
ODBC(Open DateBase Connection)는 Windows Open Server(Open Services) API(WOSA) 제품 중 하나입니다. 데이터 소스는 데이터베이스에 대한 명명된 연결입니다. 애플리케이션이 연결하려는 다양한 유형의 데이터베이스에는 ODBC 드라이버가 필요합니다. ODBC API는 주로 클라이언트/서버 RDBMS 사용을 위해 설계되었지만 ODBC 드라이버는 데스크톱 데이터베이스 파일, 워크시트 및 플랫 파일에 연결하는 데에도 사용할 수 있습니다. ODBC는 Odbcinst.dll 라이브러리를 사용하여 데이터 원본을 설정하고 지웁니다. Odbcad32.exe는 ODBC 데이터 소스를 설정하기 위한 독립적인 32비트 실행 응용 프로그램이며 제어판에 해당 아이콘이 있습니다.
ODBC 드라이버 관리자는 데이터 소스에 대한 ODBC 드라이버를 열고 SQL 문을 드라이버로 전송합니다. 클라이언트/서버 RDBMS가 선택 쿼리를 처리한 후 ODBC 드라이버는 해당 값을 응용 프로그램에 반환합니다. insert, update 또는 delete 문이 실행되면 드라이버는 쿼리의 영향을 받은 행 수를 반환합니다. phperz.com
다음은 PHP가 ODBC를 사용하여 Access 데이터베이스에 연결하는 방법을 소개합니다. $connstr="DRIVER= Microsoft Access Driver(*.mdb)를 사용하여 데이터 드라이버를 설정하고, realpath() 함수를 사용하여 데이터베이스의 상대 경로를 얻습니다. 이 방법을 사용하여 Access 데이터베이스에 연결하는 경우는 주로 다음과 같습니다. PHP의 odbc_connect() 함수 이 함수는 다음과 같습니다. www.phperz.com
resourse odbc_connect( string dsn, string user, string password [, int cursor_type]) dsn:系统dsn名称。 user:数据库服务器某用户名。 password:数据库服务器某用户密码。 cursor_type:游标类型。
코드는 다음과 같습니다.
$connstr="DRIVER=Microsoft Access Driver (*.mdb); DBQ=".realpath("bookinfo.mdb"); $connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC );
(3) Microsoft의 ADODB 데이터베이스를 사용합니다. ADO(ActiveX Data Objects)는 Microsoft 개방형 데이터베이스 응용 프로그램으로, 새로운 데이터 액세스 계층 OLE DB 공급자와 함께 작동하여 범용 데이터 액세스(Universal Date Access)를 제공합니다. 다양한 유형의 데이터에 액세스하는 데 사용할 수 있는 하위 수준 데이터 액세스 인터페이스. 데이터 소스에는 기존 관계형 데이터베이스, 이메일 시스템 및 사용자 정의된 비즈니스 개체가 포함됩니다. ADO는 많은 수의 COM 인터페이스를 캡슐화하므로 OLE DB의 작동을 크게 단순화합니다. OLE DB 프로그램에서 사용되므로 ADO는 고급 액세스 기술입니다. PHP 프로그래머 스테이션
ADO 기술은 COM(Common Object Model)을 기반으로 하며, PHP는 ADO 방법을 사용하여 조작합니다. 설명은 다음과 같습니다. www.phperz.com
string com::com( string module_name [, string server_name [, int codepage]]) module_name:被请求组件的名字或class-id。 www~phperz~com server_name:DCOM服务器的名字。 Codepage:指定用于将PHP字符串转换成UNICODE字符串的代码页,反之亦然。该参数的取值有CP_ACP、CP_MACCP、CP_OEMCP、CP_SYMBOL、CP_THREAD_ACP、CP_UTF7和CP_UTF8。 PHP利用com类并使用ADO方法访问数据库的代码如下: [code] $conn = new com("ADODB.Connection"); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("bookinfo.mdb "); $conn->Open($connstr);
다른 네티즌들이 올린 글인데, 결국 스크립트하우스에서 php+access 방명록 소스를 제공하게 됩니다. 참고로 저는 기본적으로 php access 동작에 익숙합니다.
저는 ACCESS 연결에 PHP를 거의 사용하지 않지만, 그래도 가끔씩 데이터를 안내하는 기능은 아주 좋습니다.
<?PHP /* 创建ADO连接 */ $conn = @new COM("ADODB.Connection") or die ("ADO Connection faild."); $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("DATUM/cnbt.mdb"); $conn->Open($connstr); /* 创建记录集查询 */ $rs = @new COM("ADODB.RecordSet"); $rs->Open("select * from dbo_dirs",$conn,1,3); /* 循环读取数据 */ while(!$rs->eof){ echo "$rs->Fields["title"]->Value; echo "<br/>"; $rs->Movenext(); //将记录集指针下移 } $rs->close(); ?>
PHP 액세스 데이터 연결 및 읽기 구현 코드에 대한 자세한 내용은 다음을 참조하세요. 데이터 저장 및 편집은 PHP Chinese Net을 주목해주세요!