..
Einführung
Die Interaktion zwischen PHP und die Datenbank findet seinen höchsten Ausdruck mit MySQL auf Linux-und Windows-Systemen. PHP unter Windows ist in der Lage, mit anderen Datenbanken als MySQL arbeiten, die Nutzung der Funktionen und Schnittstellen, die von verschiedenen DBMS erforderlich. Ist PHP in der Lage, mit MS Access und MS SQL Server arbeiten: In diesem Artikel werden wir sehen, wie PHP mit Access interagiert.
Die Schnittstelle zwischen einer beliebigen Programmiersprache und Web WUI mit DBMS von Microsoft, wie ihre Access, ADO (ActiveX Data Objects) bereits vertraut Programmierer, ASP.NET und Visual Basic ASP.
Bevor Sie mit der Erklärung von ADO und dessen Verwendung durch PHP und vor der Umsetzung der Beispiele beginnen, fühle ich mich verpflichtet zu sagen, dass die PHP mit einem DBMS von Microsoft gekoppelt ist nicht die geeignetste und Leistung, aber noch voll funktionsfähig.
Das Wissen zum vollen Verständnis dieses Artikels erforderlich sind:
Aufbau des Test-Datenbank
Für die Umsetzung der einige praktische Beispiel erstellen wir die Datei besteht aus der einzigen Tabelle database.mdb Access-Benutzer, die wiederum von Feldern id (Zähler), Name (Text) und Nachname (Text) komponiert.
Legen Sie die Datenbank auf Ihrem persönlichen Web-Server, Apache oder EasyPHP dass zum Beispiel in der Testlauf
C: \ percorso_fisico \ database.mdbpercorso_fisico wo ist die physikalische Adresse Ihrer persönlichen Web-Server installiert, wie in diesem Beispiel die C-Partition.
Die Datenbank ist fertig. Weiter.
Einführung in ADO
ADO ist eine Bibliothek von Microsoft, die Interaktionen mit DBMS von Microsoft selbst oder mit anderen DBMS wie MySQL für den Einsatz mit ASP.
ADO bietet drei grundlegende Objekte: Connection, Recordset und Command. Dieser Artikel basiert auf den ersten beiden dienen jeweils um die Verbindung zu verwalten und Verwaltung der Daten. Der dritte ist ein Fachgebiet, aber nicht zu gut, auch von Microsoft-Programmierern verwendet, um zu sterben, außer in besonderen Anlässen.
ASP Programmierer beachten Sie: Liebe Kolleginnen und Kollegen, wie ich :-) Sie mit dem Punkt-Zeichen, um die variable Namen, enthält zum Beispiel die Verbindung getrennt gewohnt sind, die Methode oder Eigenschaft verwendet, um sein; in PHP, für (.) die einzige Interaktion mit ADO, ist es als Trennzeichen in der verwendeten Form ->
variable-> Methodedaran erinnern, dass!
Stellen Sie die Datenbank-Verbindung
Jetzt erstellen Sie ein Verzeichnis auf unserem Test-Web-Server, zum Beispiel in die Datei und fügen phpaccess connessione.php den folgenden Code enthält:
<? PHP
$ Db = "C: \ percorso_fisico \ database.mdb";
$ Sc = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = $ db;"
?>
Die Variable $ db enthält den physischen Pfad der Datei und die Variable $ sc database.mdb enthält die OLEDB-Verbindungszeichenfolge zur Datenbank, wird diese Datei in alle PHP-Dateien, die Durchführung von Operationen auf die Datenbank in Frage einbezogen werden.
Lesen von Daten
Um das Lesen der Daten, die wir auf dem Server erstellen, in der Test-Ordner, die Datei leggi.php, unterhalb der kommentierte Code der Datei:
<html>
<head>
<title> Interaktion zwischen PHP und MS Access </ title>
</ Head>
<body>
<? PHP
/ / Fügen Sie die Datei mit der Verbindungszeichenfolge
include ("connessione.php");
/ / Erstellen Sie zwei COM-Objekte, die die Verbindungs-und Recordset
$ Cn = new COM ("ADODB.Connection");
$ Rs = new COM ("ADODB.Recordset");
/ / Ich öffne die Verbindungs-und Recordset
$ Cn-> open ($ sc);
$ Rs-> Open ("SELECT * FROM users", $ cn);
/ / Sicherstellen, dass keine Daten auf den Tisch
if ($ rs-> EOF) print "Keine Daten gefunden </ p>";
<b> / / Wenn es einen Zyklus zu lesen </ b>
sonst while ($ rs-> EOF == FALSE)
{
print "<p>";
print "<b> Name: </ b>".
$ Rs-> Fields ['name'] -> value;
print "<br>";
print "<b> Name: </ b>".
$ Rs-> Fields ['name'] -> value;
print "</ p>";
$ Rs-> MoveNext ();
}
/ / Schließen des Recordsets
$ Rs-> Close ();
$ Rs-> Release ();
$ Rs = null;
/ / Verbindung schließen
$ Cn-> Close ();
$ Cn-> Release ();
$ Cn = null;
?>
</ Body>
</ Html>
Die Bedienung ist einfach: Recordset, das Lesen und spezifischen Fragen in die Variable in dem die Verbindung geöffnet wurde übergeben, liest die Eigenschaften des Recordset EOF (End Of File) alle Daten gemäß der angegebenen Abfrage, wenn auf TRUE gesetzt bedeutet, dass es keine Daten in der Datenbank, starten Sie dann die Benachrichtigung, falls gesetzt, in einer Schleife FALSE, liest alle Daten gemäß der angegebenen Abfrage; MoveNext () beendet die Schleife und positionieren Sie den Cursor ADO zu Beginn des Zyklus, die Vermeidung einer Endlosschleife.
Die Schließung des Objektes sind die Methoden Close () und Release (), die jeweils dazu dienen, zu schließen und zerstören ein COM-Objekt. Schließlich stellen Sie die Variable auf null, die Erinnerung an die Variable zu löschen.
Das Schreiben von Daten
Das Kriterium, nach dem das Schreiben von Daten in eine Access-Datenbank mit PHP ist ähnlich wie das Kriterium der das Lesen der Daten in den folgenden Code in die Datei geschrieben nicht mit dem Recordset scrivi.php sondern führt eine SQL-INSERT dank Execute ()-Methode 'Connection-Objekt, das kommentierte Code:
<html>
<head>
<title> Interaktion zwischen PHP und MS Access </ title>
</ Head>
<body>
<? PHP
/ / Fügen Sie die Datei mit der Verbindungszeichenfolge
include ("connessione.php");
$ Cn = new COM ("ADODB.Connection");
$ Cn-> open ($ sc);
/ / Definieren der Abfrage
$ Sql = "INSERT INTO users (Vorname, Nachname) VALUES ('Luca', 'Roger')";
/ / Die Dateneingabe
$ Cn-> execute ($ sql);
/ / Starten Sie eine Bestätigungs-Nachricht
print "Einfügen <p> erfolgreich abgeschlossen </ p>";
/ / Verbindung schließen
$ Cn-> Close ();
$ Cn-> Release ();
$ Cn = null;
?>
</ Body>
</ Html>
| |
Linux (Kurs)
Ein vollständiger Reiseführer von Open-Source-System. Von 49 €. |
| |
MySQL (Kurs)
Management von Open-Source-Datenbank. Von 39 €. |
| |
PHP (Kurs)
Vollständige natürlich für die Erstellung dynamischer Websites. Von 49 €. |