PHP und ASP - Ein Vergleich
Definition |
Nutzen |
PHP |
ASP |
Vergleich |
Alternativen |
Quellen
[ <<< ] -
[ Inhalt ] -
[ >>> ] - Seite 8 / 11
ASP - ein kleines Beispiel
Hier nun das komplette Suchskript in ASP umgesetzt:
[db_read.php]
(1) <%@ LANGUAGE = "VBScript" %>
(2) <% Suchtext = Request.Form("Suchtext") %>
(3) <html><head></head>
(4) <body>
(5) <%= "Sie suchen nach: " & Suchtext & "<p>" %>
(6) <%
(7) ' Datenbankoperationen komplett
(8) ' ohne Fehlerbehandlung
(9) Dim db_conn, db_abfr
(10) Set db_conn = Server.CreateObject("ADODB.Connection")
(11) db_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
(12) Source=D:\Inetpub\wwwroot\Proseminar\Firma.mdb"
(13) Set db_abfr = db_conn.Execute("SELECT * FROM Kunden
(14) WHERE Name LIKE '%" & Suchtext & "%'")
(15) Do While Not db_abfr.eof
(16) Response.write db_abfr.Fields("Nr")
(17) Response.write db_abfr.Fields("Name")
(18) Response.write db_abfr.Fields("Adresse")
(19) Response.write "<br>"
(20) db_abfr.MoveNext
(21) Loop
(22) db_abfr.close
(23) db_conn.close
(24) %>
(25) </body></html>
Am Anfang der ASP-Datei - hier in Zeile (1) - muss festgelegt werden, in welcher Sprache die Skripte
verfasst sind, wobei ein späterer Wechsel der Sprachen noch möglich ist. Da im Gegensatz zu PHP nicht
automatisch Variablen für die übermittelten Formularfelder mit deren Inhalt angelegt werden, wird dies
hier in Zeile (2) erledigt. Dabei wird das schon erwähnte Request-Objekt benutzt, um auf die
übermittelten Daten zugreifen zu können.
In Zeile (5) wird zur Kontrolle der Suchbegriff ausgegeben, bevor dann ab Zeile (9) die eigentliche
Suche beginnt. Ein ASP-Abschnitt trennt man wie in Zeile (6) ersichtlich mit dem Prozentzeichen als
Tagname vom Rest der Seite. Da ASP von sich aus nicht auf Datenbanken (in diesem Fall ein MS-Access-DB)
zugreifen kann, wird in Zeile (10) mittels des Server-Objekts eine Instanz der Klasse
ADODB.Connection angelegt. Mit dieser ist es nun möglich, alle benötigten Datenbankoperationen
auszuführen.
In den Zeilen (11) bis (14) wird nun die Datenbank geöffnet und die Suchabfrage gestartet. Das Ergebnis
steht nun als Objekt mit dem Namen db_abfr zur Verfügung, d.h. es ist nachträglich noch möglich,
das Ergebnis weiter zu filtern oder zu sortieren. Die Ausgabe erfolgt in einer Schleife in den Zeilen
(15) bis (21), wobei erst geprüft wird, ob bereits alle gefundenen Datensätze ausgegeben wurden, dann
die Ausgabe erfolgt und danach zum nächsten Element gewechselt wird.
Nachdem in Zeile (22) und (23) die Objekte die offenen Verbindungen noch ordnungsgemäss geschlossen
haben, kann die Aufgabe als gelöst angesehen werden. Bei einem direkten Vergleich dieser mit der
PHP-Variante fallen schnell grosse Gemeinsamkeiten in der Durchführung auf.
Das prinzipielle Vorgehen ist bei beiden Varianten gleich, nur die Aufrufe der Funktionen bzw.
Methoden unterscheiden sich.
Markus John - markus.john@s2000.tu-chemnitz.de
Letzte Aktualisierung: 27.07.2001