Document

Werbung
Herzlich Willkommen
Datenbanken – Aufbaukurs Nonprint
15.05.2002 – 17.05.2002
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Referent
Dipl.-Ing. (FH) Sven Rahlfs
 Geschäftsführer Rahlfs+Ross Multimedia GmbH
 Studium der landespflege an der FH-Nürtingen
 Gründung der Rahlfs+Ross Multimedia GmbH
 Derzeit am Standort Nürtingen 10 Mitarbeiter, darunter Ralf Amann.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Übersicht
ÜBERSICHT
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Übersicht 15. Mai 2002
15. Mai 2002
 Begrüßung und Vorstellung
 Einsatzgebiete datenbankgestützter Internetseiten
 Perl, ASP und PHP als mögliche Werkzeuge für die
Erstellung dynamischer Webseiten
- Geschichtliche Entwicklung der vorgestellten Skriptsprachen
- Vergleich und Gegenüberstellung
- Sprachmerkmale
- Verbreitung und Bedeutung
 Client- / Server Verbindung als Grundlage für dynamische Webseiten
 Vorstellung unterschiedlicher Konfigurationen
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Übersicht 16. Mai 2002
16. Mai 2002
 Eingehende Betrachtung einiger Onlineangebote
mit unterschiedlichen Techniken
 Veranschaulichung der PHP / MySQL Technologie
anhand ausgewählter Onlineangebote
 Einführung in PHP
 Grundlagen der Anwendungsplanung
 Umsetzung und Programmierung einer Beispielanwendung
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Fakten
FAKTEN
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Einsatzgebiete datenbankgestützter Internetseiten I
 Content Management
Seiten mit hohem Aktualisierungsgrad können mittels Skriptsprachen von
Mitarbeitern ohne Programmierkenntnisse gewartet werden.
http://www.digital-worx.de/admin - http://www.digital-worx.de/
 Logische Hintergründe und Automatisierung
Die Skriptsprachen werden, ähnlich wie „große“ Programmiersprachen, zur
Abwicklung komplexer Vorgänge verwendet.
http://www.fh-nuertingen.de oder http://www.yahoo.de
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Einsatzgebiete datenbankgestützter Internetseiten II
 Customer Relationshipmanagement (CRM)
Kundenpflege und Versorgung der Kundschaft mit neuesten Informationen
mittels Internetbasierter Anwendungen.
http://www.digital-worx.de/admin - http://www.digital-worx.de/
 Entertainment und Kundenbindung
Onlinespiele, Foren, Votings, Personalisierung....
http://www.ureda.de
Weitere Beispiele:
Auktionen, Shopanwendungen, Projektmanagement, Zeitmanagement so wie nahezu
unbegrenzte Einsatzmöglichkeiten im Intranet
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Geschichte interaktiver Webseiten und des Internets
 1969
ARPA Netz, das Ur-Internet wird aufgebaut
 1986
Larry Wall entwickelt PERL (Practical Extraction and Report Language)
 Microsoft bringt ASP (Active Server Pages) auf den Markt
 1994
Rasmus Lerdorf entwickelt PHP/FI (Personal Homepage Tools / Form Interface)
 2002
PHP ist die am weitesten verbreitete und am häufigsten eingesetzte
Skriptsprache um interaktive Webseiten zu ermöglichen.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Gegenüberstellung Perl, ASP, PHP I
ASP
PHP3/4
Perl
Hersteller
Microsoft
Free Software
Free Software
Internet
http://www.microsoft.com/
http://www.php.net/ http://www.perl.com
Preis
im Lieferumfang/ kostenlosem
Update von Windows 95/98/NT
kostenlos
kostenlos
Plattform
Windows 95/98/NT, Mac OS
(eingeschränkte Features)
Linux/Unix,
Windows 95/98/NT
Linux/Unix,
Windows 95/98/NT
Direkt unterstütze
Webserver
Internet Information Server,
Personal Webserver
Apache (Modul, nicht
unter Windows),
Internet Information
Server (ab PHP4),
Personal Webserver
(ab PHP4)
Apache, Internet
Information Server
Einarbeitungszeit
(für bisherige HTMLund Javascript
Programmierer)
Sehr gering: Programmierung mit
einfachen, vertrauten
Skriptsprachen wie JScript oder
Vbscript
Gering: eigene, leicht Hoch: umfangreiche
erlernbare
SkrIptsprache mit
SkrIptsprache
gewöhnungsbedürftiger
Syntax
Empfehlenswerte
Vorkenntnisse
VBScript/Javascript
C/ C++, Perl,
Javascript, oderJava
C/C++
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Gegenüberstellung Perl, ASP, PHP II
ASP
PHP3/4
Perl
Direkt verfügbare
Erweiterungen
Gut: große Anzahl an freien und
kommerziellen ASPKomponenten
Befriedigend: einige
freie
Erweiterungsmodule
und Bibliotheken
Sehr gut: große
Anzahl an freien
Perl-Modulen
Erweiterungsmöglichkeiten
Gut: Verwendung beliebiger
COM-Objekte oder spezieller
ASP-Komponenten
PHP3: Mangelhaft —
nur durch
komplizierte
Modulprogrammierung
in C; PHP4: Gut —
Aufruf beliebiger
Java-Objekte
Befriedigend:
Interface zu C/C++Bibliotheken,
Programmierung
eigener PerlModule
Hauptsächliches
Einsatzgebiet
Kleine bis mittel-große Projekte
Kleine bis sehr große
Projekte
kleine bis
mittlere
Projekte
Performance
gut: Kompilierung und Caching
der Seiten
PHP3: Befriedigend
(Apache am modphp), sonst
ausreichend; PHP4:
Sehr gut.
Gut bis
befriedigend
(Apache am
mod_perl), sonst
ausreichend
Portierbarkeit
Schlecht: beschränkt auf
Windows NT Server
Gut: Unix/Linux und Sehr gut: für
Windows, Soureecode Unix/Linux,,
verfügbar
Mac und
Windows
erhältlich
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Gegenüberstellung Perl, ASP, PHP III
ASP
PHP3/4
Perl
Allgemein als CGI-Progamm
lauffähig
nein
ja
ja
Sesslon-Handling
ja
ab PHP4
ja
nein
Datum/Kalenderfunktionen
ja
ja
ja
Browser-Abfrage
ja
ja
ja
File-Upload
nein
ja
ja
Unterstützte Datenbanken
ODBC, Sybase, Oracle,
MSQL, MySQL...
ODBC, Adabas D,
Dbase, FilePro,
Informix, MSQL,
MySQL, Oracle,
PostgreSQL, Sybase,
Velocis...
Adabas D, Dbase,
Informix, MySQL,
Oracle, PostgreSQL,
Sybase...
PDF-Generierung,
Grafik-Generierung,
XML-Parameter
grosse Anzahl an PerlModulen
Besonderheiten/ zusätzliche Banner-Rotierung,
Features
Seitenzähler, Permission,
Checker, Content Linking
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Vor- und Nachteile Perl
[+] leistungsfähige Programmiersprache mit vielen Funktionen
[+] sehr gut für Text-Processing geeignet
[+] viel verfügbare Dokumentation
[+] zahlreiche Bibliotheken (CGI, DBI, Grafik, LDAP, …)
[+] weit verbreitet (vor allem im Unix-Umfeld), für alle Plattformen erhältlich;
gehört zu praktisch jeder Unix-Installation.
Auch für andere Zwecke häufig verwendet.
[+] Open Source
[ - ] für Einsteiger gewöhnungsbedürftige Syntax
[ - ] da keine speziell auf Webapplikationserver zugeschnittene Sprache, sind für
komfortables Arbeiten zusätzliche Module nötig
[ - ] eher langsam, wenn nicht nicht via Embperl oder ePerl im Webserver integriert
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Vor- und Nachteile PHP
[+] weit verbreitet
[+] Open Source
[+] speziell für Server Side Scripting entwickelt
[+] leistungsfähige und einfache Schnittstellen zu häufig in Webapplikationen
benutzten Netzwerkdiensten (Datenbanken, LDAP, Mail, …)
[+] leicht zu erlernende Sprache
[ - ] Anbindung an bestehende Applikationen eher umständlich
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Vor- und Nachteile ASP
[+] im Microsoft-Umfeld weit verbreitet, im Internet Information Server integriert
[+] Programmierung in JavaScript (oder VBScript) ist vielen
Webprogrammierern vertraut
[+] durch von Microsoft gelieferte COM-Komponenten komfortable
Anbindung an Microsoft Produkte (Excel, Access)
[ - ] Fähigkeit von JavaScript begrenzt, Leistungsfähigkeit resultiert aus den
Komponenten, nicht aus der Mächtigkeit der Programmiersprache
[ - ] proprietäre Lösung, nur im Microsoft-Umfeld, das heißt IIS, nutzbar
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Verbreitung der vorgestellten Skriptsprachen I
Meldung der webhostlist vom 12.5.2000
In einem Testverfahren wurden mehr als 600 von Webprovidern selbst betriebene
Server online getestet und nach den installierten Software-Versionen ausgewertet.
Überraschend klar das Ergebnis:
 85 % Apache
 14% IIS
Auch bei den genutzten Scriptsprachen brachte die Studie neue Erkenntnisse:
 Etwas mehr als 50 % der getesteten Server unterstützte
die Programmiersprache PHP,
 15% die Microsoft-Variante ASP und
 immerhin noch 13,4% Perl.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Verbreitung PHP
9.091.908 Domains, 1.192.687 IP Addressen unterstützen PHP
Quelle: Netcraft
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Technik
TECHNIK
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Client- Serververbindungen
 Für den Internet-Dienst "World Wide Web" muß auf einem Hostrechner, der anderen
Rechnern diese Dienste anbieten will, eine entsprechende Server-Software laufen.
 Ein Hostrechner kann einen Internet-Dienst nur anbieten, wenn eine entsprechende
Server-Software auf dem Rechner aktiv und der entsprechende Port geöffnet ist.
 Server sind Programme, die darauf warten, daß eine Client-Anfrage eintrifft.
 Clients sind dagegen Software-Programme, die von Servern anfordern (z.B. ein
WWW-Browser).
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Webserver und Skriptsprachen
 Perl, ASP oder PHP werden als serverseitige Erweiterungen in den Webserver
eingebunden
 Zur Laufzeit werden die Skriptteile einer Datei „geparst“ und eine Ausgabedatei
generiert
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Webserversysteme und deren Verbreitung
 In der Hauptsache sind derzeit zwei Serversysteme im Einsatz:
- Apache auf Linux / Unix
- MS IIS auf MS Windows
 Aktive Server Juni 2000 - April 2002 (Quelle Netcraft):
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Anforderungen an moderne Webserver
 Stabilität
 Performance
 Unterstützung gängiger Internet-Standards (RFC)
 Optimale Integration in das Betriebsystem
 Administration
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Apache im Überblick
 Entstanden aus einem gepachten NCSA Server -> „a patchy Server“
 Seit 1995 entwickelt von der „Apache Group“
ab 1999 als „Apache Software Foundation“
 Betriebssysteme
- Alle Unix-Derivate
- Windows 32-Bit
- MacOS
 Kostenfrei erhältlich als Source-Code oder als Binärdatei
 Funktionen
- Webserver
- SSL
- Proxy möglich
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
IIS im Überblick
 Version 1.0 erstmals als Beta-Version für NT 3.51 erhältlich
 Seit Version 2.0 Bestandteil des NT-Servers
 Aktuelle Version 5.0
 „abgespeckte“ Versionen für Win 9x und NT Workstation
 Funktionalität
- Webserver
- FTP-, SMTP- und NNTP-Server
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Apache vs. IIS – Servertechnik
IIS
Apache
Virtual Server
Ja
Ja
HTTP 1.1 Unterstützung
Ja
Ja
URL Mapping und Umleitung
Ja
Ja
HTTP-Header (Expires...)
Ja
Ja
SSI
Ja
Ja
Cookie-Verwaltung
Ja
Ja
SMTP, NNTP
Proxy
Zusatzfeatures
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Apache vs. IIS – erf. Vorkenntnisse
 Für professionellen Serverbetrieb notwendige Kenntnisse:
 Detaillierte Betriebssystemkenntnisse
 TCP/IP-Kenntnisse
 HTTP-Kenntnisse
 Kenntnis einer administrativen Skriptsprache (z.B. Perl bzw. VBA)
 Grundlegende Datenbankkenntnisse
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Apache vs. IIS – Verwaltung
IIS
 Sehr leichte Administration der Grundeinstellungen
 Gute Remoteadmin-Funktionen
 Komplexe Architektur
 Admin-Scripting komplexer als Apache
Apache
 Sehr komplexe Konfigurationsdatei für „Anfänger“
 Noch keine 100%ig stabile GUI
 Sehr detailliert einstellbare Konfigurationsdatei
 Sehr geringer Ressourcenbedarf
 Leicht austauschbare Konfiguration
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Serverinstallation – WAMP, LAMP
Je nach verwendeter Technik sind unterschiedliche Schritte bei der
Anpassung bzw. der Installation auf dem Webserver zu gewährleisten.
Bei der Verwendung von PHP spricht man von einem
WAMP - Server:
Windows Apache MySQL PHP
Bzw. von einem
LAMP – Server:
Linux Apache MySQL PHP
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Serverinstallation
In jedem Fall sind folgende Schritte notwendig:
1)
Installation einer Serversoftware
2)
Installation einer Datenbank
3)
Installation einer Skriptsoftware
4)
Modifikation der Konfigurationsdateien der Webserversoftware
-
Apache: Anpassung der httpd.conf mittels Texteditor
-
IIS: Anpassung der Konfiguration mittels GUI
Die Installation und Anpassung der Serversoftware obligt i.d.R. dem Webmaster bzw.
Systemadministrator. Bei Serverpaketen eines ISP wird die Installation von diesem
vorgenommen.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Zusammenfassung

Die Verwendung datenbankgestützter Techniken bietet sich bei
Webseiten mit wechselnden Inhalten an.

Steuerung der Inhalte und Datenbankzugriffe werden über
Skriptsprachen gewährleistet

Als Skriptsprachen haben sich vor allem Perl, ASP und PHP bewährt.

Die Skriptelemente werden zur Laufzeit gegen Standard-HTML
ausgetauscht und an den Client geschickt.

Das Parsen der Skripte übernimmt der Webserver
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxis I
PRAXIS1
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxisbeispiele – www.msn.de
www.msn.de
 Microsofts grosses Portal
 Informationsverbreitung
 Messaging
 Chat
 Foren
 Personalisierung
 ....
Komplette Programmierung in ASP
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxisbeispiele – www.fh-nuertingen.de
www.fh-nuertingen.de
Die Fachhochschule Nürtingen setzt in Teilen ihrer Homepage modulare
PHP-Skripte ein:
 FH-iNTern – e-Magazin, modulares CMS
 Veranstaltungskalender – modulares CMS und Contentsteuerung
 Pressemeldungen – modulares CMS
 Seminaranmeldung – modulares CMS und komplexe
Hintergrundaktivitäten zur e-Administration
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxisbeispiele – shop.gb-arbeitsschutz.de
Shop.gb-arbeitsschutz.de
 Shopsystem der Karlsruher Firma gb-Arbeitsschutz.de
 Komplett PHP-basiert
 Session-management
 Authentifizierung
 Katalog- und Produktverwaltung
 MyShop Technologie
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxisbeispiele – Perl
Perl
Findet inzwischen im Front End Bereich kaum noch Anwendung. Durch die
Nähe zum Betriebssystem ist Perl aber nach wie vor gern verwendete
Skriptsprache zur Entwicklung Client-Server basierter Anwendungen:
 Intershop 4 – E-Commerce Software, www.biegex.de
 IONAS 1.81 – CMS, www.ccf-kinderhilfswerk.org
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Fazit aus der Praxisbetrachtung
 Im Erscheinungsbild der Webseiten ergeben sich durch die
unterschiedlichen Technologien keine Unterscheidungen.
 Wesentliche Unterschiede sind die bereits besprochenen
Unterschiede im Hintergrund.
 Alle Techniken bieten ein sicheres und weitreichendes
Anwendungsspektrum im Inter- und Intranet.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Newsdatenbank
www.digital-worx.de/admin - www.digital-worx.de
Anhand einer relativ kleinen News-Datenbank werden die Prozesse einer
datenbankgestützten Webanwendung im Front- und Backend-Bereich
dargestellt:
 Artikel verwalten
 Artikel anlegen
 Artikel bearbeiten
 Artikel löschen
 Artikel im Frontend ausgeben
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Artikel verwalten
Um die in der Datenbank enthaltenen Artikel zu überblicken wird eine Liste
der vorhandenen Daten erstellt. Über einen Hyperlink kann der Benutzer
einen Artikel auswählen und z.B. bearbeiten.
1) Aufbau einer Verbindung zum Datenbankserver
2) Abfrage auf die geöffnete Datenbank, u.U. nur auf Teilbereiche
3) Einlesen des Abfrageergebnisses in die Programmumgebung der
verwendeten Skriptsprache
4) Satzweise Ausgabe der abgefragten Datenbankinhalte inkl. weiterer
Seitenelemente (z.B. Hyperlinks zur Satzauswahl)
5) Schliessen der Verbindung zum Datenbankserver
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Artikel anlegen
Um einen neuen Artikel anzulegen stellt die Anwendung dem Benutzer ein
Onlineformular zur Verfügung. Die Felder des Formulares sind leer.
Das notwendige Formular kann in Standard-HTML erstellt werden.
Zur Bereitstellung langer Listenfelder (z.B. Monatstage) kann eine
Skriptsprache verwendet werden.
Mit dem Event OnSubmit sollten die Formularinhalte per Javascript auf
deren Plausibilität bzw. Vollständigkeit überprüft werden.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – angelegten Artikel in die Datenbank schreiben
Der angelegte Artikel wird in die Datenbank geschrieben um ihn dauerhaft
zu speichern. Dies erfolgt in der Regel im Hintergrund und wird vom
Benutzer i.d.R. nicht wahrgenommen.
1)
Aufbau einer Verbindung zum Datenbankserver
2)
Anfügen des neuen Datensatzes an das Ende der Datenbank
3)
Schliessen der Verbindung zum Datenbankserver
4)
Weiterleitung auf die nächste auszugebende Seite.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Artikel bearbeiten
Von der Übersicht kann ein Artikel zur Bearbeitung ausgewählt werden.
1) Aufbau einer Verbindung zum Datenbankserver
2) Abfrage des Datensatzes mit der übergebenen ID in der geöffneten
Datenbank
3) Einlesen des Abfrageergebnisses in die Programmumgebung der
verwendeten Skriptsprache
4) Ausgabe des Abfrageergebnisses in einem Onlineformular. Die
Formularfelder enthalten dann den jeweils passenden Feldinhalt
5) Schliessen der Verbindung zum Datenbankserver
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – bearbeiteten Artikel in die Datenbank schreiben
Der bearbeitete Artikel wird in die Datenbank geschrieben um ihn dauerhaft
zu speichern. Dies erfolgt wie das erstmalige Speichern in der Regel im
Hintergrund und wird vom Benutzer i.d.R. nicht wahrgenommen.
1)
Aufbau einer Verbindung zum Datenbankserver
2)
aktualisieren des entsprechenden Datensatzes, identifiziert durch die
mit übergebene ID
3)
Schliessen der Verbindung zum Datenbankserver
4)
Weiterleitung auf die nächste auszugebende Seite.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Artikel löschen
Von der Übersicht kann ein Artikel zur Löschung ausgewählt werden. Bevor
die Löschung endgültig vollzogen wird sollte durch eine
Zwischenabfrage sichergestellt werden ob die Löschung wirklich
beabsichtigt ist!
1)
Aufbau einer Verbindung zum Datenbankserver
2)
Löschung des durch die mitübergebene ID identifizierten Datensatzes
3)
Schliessen der Verbindung zum Datenbankserver
4)
Weiterleitung zur nächsten auszugebenden Seite
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Prozessanalyse – Artikel ausgeben
Die in der Datenbank enthaltenen Artikel sollen für gewöhnlich an
geeigneter Stelle im Frontend ausgegeben werden.
1) Aufbau einer Verbindung zum Datenbankserver
2) Abfrage des, durch die mitgegebene ID eindeutig zu identifizierenden,
Datensatzes in der geöffneten Datenbank
3) Einlesen des Abfrageergebnisses in die Programmumgebung der
verwendeten Skriptsprache
4) Ausgabe der Datensatzinformation in formatierter Form
5) Schliessen der Verbindung zum Datenbankserver
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxis II
PRAXIS2
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung
1)
Konzeption
2)
Screendesign
3)
HTML und JS Programmierung
4)
Einbinden der PHP Skripte in die HTML Struktur
(tw. JS Programmierung)
5)
Datenmigration
6)
Test und Qualitätssicherung
7)
Langfristige Beobachtung der Anwendung im Alltag
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Konzeption

Welche Funktionen soll die Anwendung abdecken?

Welche Schnittstellen müßen bedient werden?

Welche Prozesse werden notwendig sein?

Wie sind die Prozesse technisch realisierbar?

Welche Daten müssen gespeichert werden?

Aufbau einer Datenbankstruktur als ER-Modell

Normalisierung der Datenstruktur

Woher kommen die initialen Datensätze?

Wie können die initialen Datensätze migriert werden?

Wer pflegt wie und mit welchem Aufwand die Daten?
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Screendesign

Neben den herkömmlichen Grundregeln zum Screendesign
muss die dynamische Datenlänge berücksichtigt werden

Benutzerführung im Back-Office ist besonders wichtig

„Design follows function“ sollte als Leitsatz gelten

Design an der Zieldefinition ausrichten
(z.B. ist im B2B Bereich ist zuviel „Schnick-Schnack“ oft hinderlich)

Vor der Freigabe des Screendesigns ist ein abstimmender
Workshop mit den Entwicklern unumgänglich um die Machbarkeit
sicherzustellen
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Konzeption

Welche Funktionen soll die Anwendung abdecken?

Welche Prozesse werden notwendig sein?

Wie sind die Prozesse technisch realisierbar?

Welche Daten müssen gespeichert werden?

Aufbau einer Datenbankstruktur

Woher kommen die initialen Datensätze?

Wie können die initialen Datensätze migriert werden?

Wer pflegt wie und mit welchem Aufwand die Daten?
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung – HTML und JS

Kann von Programmierern übernommen werden die keine
Skriptkenntnisse (z.B. PHP) besitzen.

Kommentare erleichtern die Einbindung der Skriptelemente

Formularnamen eindeutig und sinnvoll vergeben

Formularfeldnamen ebenfalls eindeutig und sinnvoll vergeben

Vor Beginn der Programmierung muss dokumentiert werden welche
syntaktischen Grundregeln verfolgt werden
(z.B. Groß-, Kleinschreibung von Feldnamen...)

Durch enge Zusammenarbeit mit den Skriptentwicklern können
Missverständnisse und Mehraufwand vermieden werden.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Skripte

Die Skriptelemente werden direkt in den HTML-Code eingebettet

Kommentare machen ein späteres Einarbeiten in die Skripte einfacher
und dienen auch bei der Entwicklung der Orientierung

Bei jeder Skriptsprache gibt es Empfehlungen zur sauberen
Programmierung, diese sollten eingehalten werden

Variablen sollten nicht „blind“ verwendet werden

Eine konsequente Syntax erhöht die Effizienz
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Datenmigration

Erstellen der Datenbankstruktur, z.B. mit Hilfsmitteln wie phpMyAdmin
für MySQL

Import der Initialdaten über programmierte Skripte oder auch über
Hilfsmittel wie z.B. phpMyAdmin für MySQL

Kontrolle ob die importierten Daten richtig in die Datenbank
geschrieben wurden

Kontrolle ob die Feldgrößen der Datenbank der Länge der gelieferten
Daten genügt
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung – Test und QS

Vor Übergabe an den Kunden bzw. Übergang der Anwendung in den
Livebetrieb muss diese einem ausführlichen Test unterzogen werden

Test durch unterschiedliche Nutzer

Test auf unterschiedlichen Rechnern

Test auf unterschiedlichen Betriebssystemen

Test in unterschiedlichen Browsersystemen
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Erstellungsschritte einer Webanwendung - Langzeitbeobachtung

Mit dem Übergang in den Livebetrieb darf die Qualitätssicherung nicht
abbrechen

Eine langfristige Beobachtung der Anwendung sollte schon aus
Gründen des eigenen Interesses erfolgen
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praxis III
PRAXIS3
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Ein reines PHP-Programm – phpinfo

PHP kann in einem herkömmlichen Texteditor programmiert werden

Die PHP-Funktion phpinfo() gibt die PHP-Konfiguration des Servers aus
<?
phpinfo();
?>

Jede Befehlszeile wird in PHP mit einem „ ; “ beendet
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
PHP in HTML

PHP-Teile werden im Dokument durch die Sondertags
<? bzw. <?php
eingeleitet und durch
?>
beendet.

Alle Elemente zwischen diesen Tags werden vom PHP-Programm
interpretiert und gegen Standard-HTML ersetzt
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Hallo Welt

Durch die Einbettung des PHP-Codes in den HTML-Code können die
PHP-Ausgaben formatiert und an das Screendesign angepasst werden
<html>
<body>
<center>
<?
echo „<font><face=arial><b>Hallo Welt!</b></font>“;
?>
</center>
</body>
</html>
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Grundwissen PHP – Kommentare
PHP kennt zwei Arten Kommentare:

Einzeilige Kommentare:
//

vor eine Zeile gestellt bewirkt das Ignorieren dieser
Zeile durch den PHP-Interpreter
Mehrzeilige Kommentare:
/*
bewirkt das Ignorieren aller Skriptteile bis der
Kommentar durch
*/
beendet wird
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung - Aufgabenstellung

Über ein Formular soll der Benutzer Vorname und Zuname in einer
Datenbank speichern können.

Die eingetragenen Daten sollen editiert werden können

Die eingetragenen Daten sollen einzeln gelöscht werden können
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung - Fragestellung

Prozesse?

Notwendige Dateien?

Notwendige Datenbankfelder und Feldtypen?

Sicherheitsabfragen?

Kontrollinstanzen?
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – Anlegen der Datenbankstruktur

Anlage der Datenbankstruktur erfolgt über das Hilfsmittel phpMyAdmin

phpMyAdmin ist eine PHP-Skriptsammlung zur einfachen
Administration der MySQL Datenbank

Mit phpMyAdmin können Sie je nach Benutzerrechten:


Datenbanken anlegen

Tabellen innerhalb von Datenbanken anlegen

Daten manipulieren

Daten migrieren

Daten exportieren

......
http://www.phpmyadmin.net/
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – liste.php4
Aufgaben der Datei liste.php4:

Ausgabe einer Liste der in der Datenbank enthaltenen Einträge

Link für einen Neueintrag

Link zur Edit-Maske

Link zum Löschen eines Datensatzes
Verwendete Funktionen:
mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd);
mysql_select_db($mysqlDb, $conn);
mysql_query("SELECT * FROM $mysqlTabelle ORDER BY name");
while($row=mysql_fetch_row($result)) {
echo $row[1];
}
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – insert.php4
Aufgaben der Datei insert.php4:

Formular zur Eingabe eines neuen Datensatzes
Verwendete Funktionen:
<script language="JavaScript">
<!-function chkFormular()
{
if(document.eingabe.vorname.value == "")
{
alert("Bitte geben Sie einen Vornamen ein!");
document.eingabe.vorname.focus();
return false;
}
}
//-->
</script>
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – insert.sql.php4
Aufgaben der Datei insert.sql.php4:

Schreiben der eingetragenen Werte in die Datenbank
Verwendete Funktionen:
mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd);
mysql_select_db($mysqlDb, $conn);
mysql_query("insert into $mysqlTabelle
values ('', '$vorname', '$name')");
header ("Location: list.php");
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – edit.php4
Aufgaben der Datei edit.php4:

Darstellung des betroffenen Datensatzes in einem Formular
Verwendete Funktionen:
mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd);
mysql_select_db($mysqlDb, $conn);
$result=mysql_query("SELECT * FROM $mysqlTabelle
where id='$id'");
$row=mysql_fetch_row($result);
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – edit.sql.php4
Aufgaben der Datei edit.sql.php4:

Schreiben der editierten Werte in die Datenbank
Verwendete Funktionen:
mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd);
mysql_select_db($mysqlDb, $conn);
mysql_query("update $mysqlTabelle set vorname='$vorname',
name='$name' where id='$id'");
header ("Location: list.php");
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – delete.php4
Aufgaben der Datei edit.sql.php4:

Löschen eines Datensatzes
Verwendete Funktionen:
mysql_connect($mysqlHost, $mysqlUser, $mysqlPwd);
mysql_select_db($mysqlDb, $conn);
mysql_query("delete from $mysqlTabelle where id='$id'");
header ("Location: list.php");
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Praktische Umsetzung – alle Dateien
In allen Dateien wird in den ersten Zeilen der Befehl
require("config.inc.php");
abgearbeitet.
Hierdurch wird die Datei config.inc.php in die aktuelle Datei einbezogen. Die darin
enthaltenen Variablen stehen so automatisch auch in der aktuellen Datei zur
Verfügung.
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Anhang
ANHANG
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Neuerungen von PHP3 zu PHP4

Automatisches Freigeben von nicht mehr benutztem Speicher

Boolsche Kontsanten

OOP-Erweiterungen

COM_Unterstützung

foreach-Schleifen für die Behandlung von Arrays

Neue Array-Funktionen

Output Buffering zum Speichern der Ausgabe von PHP-Skripten in Variablen

Referenzen auf Variablen (Pointer)

Sessions

Spätes Binden von Funktionen

Entfernen von Variablen aus dem Speicher mit unset()

Variablen innerhalb von Strings

Verbesserte Konfigurationsmöglichkeiten

Vereinfachte Anpassung an Webserver
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Links zum Thema

http://www.php.net
die offizielle Seite zum PHP Projekt

http://www.asp.net
die MS ASP Seite zu ASP

http://www.perl.com
die offizielle PERL-Seite

http://www.php-center.de
umfangreiches PHP-Portal mit Tutorials, FAQ, Dokumentationen...

http://www.mysql.com
die offizielle Seite der MySQL

http://www.apache.org
die offizielle Seite des Apache-Projekts
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Literatur

Einführung in Perl, O‘Reilly™
ISBN 3-89721-105-X
Gute Einführung in Perl

PHP 4 Grundlagen und Profiwissen, HANSER Verlag
ISBN 3-446-21546-8
Wie der Titel schon andeutet ein sehr gutes Buch für professionele
Entwickler

Apache, HANSER Verlag
ISBN 3-446-21588-3
Gute Anleitung zum Umgang mit dem Apache Webserver

SQL-der Standard, ADDISON-WESLEY
ISBN 3-8273-1345-7
Das Standardwerk zum Standard
Rahlfs+Ross Multimedia GmbH | Alleenstr. 17a | D-72622 Nürtingen | Tel. +49 (0)7022 - 93392-0
Herunterladen