Programmiersprachen
PHP
Informationen von den Erfindern
Manuals
- prozedural mit Objektorientierten Erweiterungen
- Scriptsprache
- Anwendungsgebiet:
spezielle serverseitige Scriptsprache für WWW-Seiten
Würdigung
Mit dieser Sprache kann man relativ einfach Dynamik in die WWW-Seiten bringen.
Besonders interessant ist die Einbindung von relationalen Datenbanken.
Darüber hinaus sind sehr viele Schnittstellen zu verschiedenen Diensten wie
LDAP und IMAP usw. (Es ist richtig eine Fundgrube ...)
An sich sind durch die WWW-Server und Browser-Technologie Multi Tier Architekturen modern geworden.
Die Päsentationsschicht kann aus dem Browser und aus einem PHP-Programm auf dem WWW-Server bestehen.
Andererseits fallen bei PHP-Programmen meist Datenabstraktionsschicht,Applikationsschicht und die eine Häfte der Präsentationsschicht zusammen. Dies ist sehr gut für Anwendungen, die diese Unterteilung nicht brauchen.
kritische Fragen
- Warum hat jede Datenbank eine eigene Funktion, anstatt eine einheitliche API ?
(OO-API wie JDBC/ODBC - oder eventuell diese ?)
Inszwisschen gibt es PDO
Sonstiges
Corba-Anbindung
Universe ermöglicht mit dem MICO-ORB eine CORBA-Anbindung
Vergleiche mit Alternativen
Links zur Programmierung
Sebastian Bergmann: "Professionelle Softwarenentwicklung mit PHP5
Sicherheitstips
- Um SQL/Shellinjektion zu vermeiden, bitte Nutzereingaben via GET und POST immer prüfen [PCM]
- Speziell könnten Eingabevariablen SQL-Anweisungen umformen und so Daten Preis geben.[PCM]
- Informationslücken durch falsche WWW-Server-Konfiguration: sobald eine Datei lesbar ist, kann sie ein WWW-Server an einen Client weitersenden - Passwörter oder ähnliches können darunter sein. [PCM]
- Cross Site Scripting: Ein böser Code kann über die Seite im Browser code ausführen - Zur Vermeidung dürfen Nutzereingaben nicht ungefiltert dargestellt werden. [PCM]
- magic_quotes_... = off in pgp.ini verhindert dass GET/POST-Variablen gleichzeitig Variablen werden - SQL/Shell-Injektion droht sonst. [PCM]
- Die PHP-Implementierung selber hatte schon Bufferüberläufe
Links
PHP auf Heise
Informatik- und Netzwerkverein Ravensburg e.V
Rudolf Weber