..
はじめ
PHPとデータベースの間の相互作用は、LinuxとWindowsの両システム上のMySQLとの最高の表現を見つける。 Windows版PHPは、異なるDBMSで必要な機能とインターフェイスを利用し、MySQL以外のデータベースを操作することができます。 PHPはMS AccessとMS SQL Serverと連携することができます:この記事ではPHPがアクセスと対話する方法がわかります。
プログラマ、ASP.NETおよびVisual BasicをASPにはすでにおなじみの、任意のプログラミング言語、およびMicrosoftからのDBMSとウェブWUI、、そのAccessなど、ADO(ActiveXデータオブジェクト)間のインタフェース。
あなたがPHPを介してADOおよびその使用に関する説明をし、例を実装する前に開始する前に、私はマイクロソフトからDBMSと相まって、PHPが最も望ましいとパフォーマンスではないことを言ってバインドされている感じ、しかしまだ完全に機能する。
この記事を完全に理解するために必要な知識は以下のとおりです。
テストデータベースの構造
いくつかの実用的な例の実施のために我々は、フィールドID(カウンタ)、 名前 (テキスト)と姓 (テキスト)から構成される順番に、ファイルが単一のテーブルのデータベース。mdb Accessユーザーで構成されて作成されます。
テスト実行で個人用Webサーバ、ApacheまたはEasyPHPを、例えば上のデータベースを配置
C:\ percorso_fisico \データベース。percorso_fisicoはどこにこの例のように、インストールされている個人用Webサーバの物理アドレス、、Cパーティションです。
データベースの準備ができています。 続ける。
ADO入門
ADOは、ASPとの使用のために、マイクロソフト自体から、またはMySQLのような他のDBMSとDBMSとの相互作用を可能にするMicrosoftのライブラリです。
接続、レコードセット、およびコマンド :ADOは、3つの基本的なオブジェクトを提供しています。 この記事では、接続を管理し、データを管理するために、それぞれ提供する最初の二つを使用しています。 三つ目は専門科目ですが、あまりよくないにも特別の日を除いて、死ぬためにMicrosoftのプログラマが使用。
ASPのプログラマは注意してください:親愛なる同僚を、私のように:-)あなたが接続例えば、含まれている変数名を区切るためにドット文字を使用に慣れている、メソッドまたはプロパティが使用されるように、PHPで、のために(。) ADOとの相互作用のみ、それが形に区切り文字として使用される- >
変数 - >方法それを忘れないでください!
データベース接続を確立する
今すぐファイルで、例えば、我々のテストWebサーバー上のディレクトリを作成し、次のコードを含むphpaccess connessione.phpを挿入します。
<?PHP
します$ db ="C:\ percorso_fisico \データベース。mdb";
$ SC ="プロバイダ= Microsoft.Jet.OLEDB.4.0;データソース= $ DB;"
?>
変数$ dbは、ファイルの物理パスが含まれていると、変数$ SC database.mdbは、データベースへのOLEDB接続文字列を含む、このファイルは、問題のデータベース上で操作を実行するすべてのPHPファイルにも含まれます。
データの読取り
ファイルのコメントコードの下にtestフォルダ、ファイルのleggi.php、で、我々はサーバ上に作成したデータの読み取りを実行するには:
<HTML>
<HEAD>
PHPとMS Accessの間<TITLE>相互作用</タイトル>
</ヘッド>
<BODY>
<?PHP
/ /は、接続文字列を含むファイルをインクルード
("connessione.php")を含む;
/ /は、接続とレコードセットを含む二つのCOMオブジェクトを作成します。
$ CN =新しいCOM("ADODB.Connectionの");
$ルピー=新しいCOM("ADODB.Recordsetの");
/ /私は接続とレコードセットを開く
$ CN ->オープン($ SC);
$ RS -> [開く]("ユーザーがSELECT * FROM"、$ CN);
/ /テーブルの上にはデータが存在しないことを確認してください
するif($ RS -> EOF)印刷"データがありません<P> </ P>";
ある[<b> / / </ B>を読んでのサイクルがある場合
他の一方($ RS -> EOF == FALSE)
{
"<p>を"印刷;
プリント"<b>名前:</ B>"。
$ RS ->フィールド['名前'] - >値;
"<br>を"印刷;
印刷以下"<b>姓:</ B>"。
$ RS ->フィールド['名前'] - >値;
プリント"</ P>";
$ RS -> MoveNextメソッド();
}
/ /レコードセットを閉じる
$ RS -> [閉じる]();
$ RS -> Release()の;
$ルピー= NULL;
/ /接続を閉じる
$ CN -> [閉じる]();
$ CN -> Release()の;
$ CN = NULL;
?>
</ BODY>
</ HTML>
操作は簡単です:TRUEに設定されている場合、接続がオープンされた変数に読み取りと特定のクエリを渡すために、レコードセット、レコードセットのEOF(ファイルの終わり)のプロパティは、指定されたクエリに基づいてすべてのデータを読み込み、ループでFALSEに設定されて、指定したクエリに基づいてすべてのデータを読み込んだときにデータベースにデータが存在しないことを意味して、通知メッセージを起動し、MoveNextメソッドは、()ループと位置カーソルを終了ADOは、サイクルの開始時に、無限ループを回避できます。
オブジェクトの閉鎖は、COMオブジェクトを閉じ、破棄するために、それぞれ機能するメソッドを閉じる()とRelease()です。 最後に、変数のメモリをクリアする変数をnullに設定します。
データ書き込み
あなたがPHPでAccessデータベースにデータがファイルに書かれた次のコードでデータを読み込むの基準、に似ている書き込みこれによって基準は、Recordset scrivi.phpを使用していますが、実行するSQLのINSERT感謝を実行する(しない)の方法"Connectionオブジェクト、コメントされたコード:
<HTML>
<HEAD>
PHPとMS Accessの間<TITLE>相互作用</タイトル>
</ヘッド>
<BODY>
<?PHP
/ /は、接続文字列を含むファイルをインクルード
("connessione.php")を含む;
$ CN =新しいCOM("ADODB.Connectionの");
$ CN ->オープン($ SC);
/ /クエリを定義します。
$ SQL ="ユーザが、INSERT INTO(名、姓)VALUES('ルカ'、'ロジャー')";
/ /データのエントリを作成します。
$ CN ->実行($ sql)を。
/ /確認メッセージを起動
印刷"<p>を挿入すると正常に完了</ P>";
/ /接続を閉じる
$ CN -> [閉じる]();
$ CN -> Release()の;
$ CN = NULL;
?>
</ BODY>
</ HTML>
| |
Linuxの(コース)
オープンソースシステムへの完全なガイド。 49€から。 |
| |
MySQLの(コース)
オープンソースのデータベースの管理。 39€から。 |
| |
PHP(コース)
動的なWebサイトを作成するためのフルコース。 49€から。 |