Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 << zurück
C von A bis Z von Jürgen Wolf
Das umfassende Handbuch für Linux, Unix und Windows
– 2., aktualisierte und erweiterte Auflage 2006
Buch: C von A bis Z

C von A bis Z
1.116 S., mit CD, Referenzkarte, 39,90 Euro
Galileo Computing
ISBN 3-89842-643-2
gp Kapitel 26 CGI mit C
  gp 26.1 Was ist CGI?
  gp 26.2 Vorteile von CGIs in C
  gp 26.3 Andere Techniken der Webprogrammierung
  gp 26.4 Das dreistufige Webanwendungsdesign
    gp 26.4.1 Darstellungsschicht
    gp 26.4.2 Verarbeitungsschicht
    gp 26.4.3 Speicherschicht
  gp 26.5 Clientseitige Programmierung
    gp 26.5.1 JavaScript
    gp 26.5.2 Java-Applets
  gp 26.6 Serverseitige Programmierung
  gp 26.7 Der Webserver
    gp 26.7.1 Das Client/Server-Modell des Internets
    gp 26.7.2 Serverimplementierung
    gp 26.7.3 Hosting-Services
    gp 26.7.4 Schlüsselfertige Lösung
    gp 26.7.5 Weitere Möglichkeiten
    gp 26.7.6 Apache
  gp 26.8 Das HTTP-Protokoll
    gp 26.8.1 Web-Protokolle
    gp 26.8.2 Wozu Protokolle?
    gp 26.8.3 Was ist ein Protokoll?
    gp 26.8.4 Normen für die Netzwerktechnik
    gp 26.8.5 Das OSI-Schichtenmodell
    gp 26.8.6 Die Elemente einer URL
    gp 26.8.7 Client-Anfrage – HTTP Request (Browser-Request)
    gp 26.8.8 Serverantwort (Server-Response)
    gp 26.8.9 Zusammenfassung
  gp 26.9 Das Common Gateway Interface (CGI)
    gp 26.9.1 Filehandles
    gp 26.9.2 CGI-Umgebungsvariablen
    gp 26.9.3 CGI-Ausgabe
  gp 26.10 HTML-Formulare
    gp 26.10.1 Die Tags und ihre Bedeutung
  gp 26.11 CGI-Eingabe
    gp 26.11.1 Die Anfrage des Clients an den Server
    gp 26.11.2 Eingabe parsen
  gp 26.12 Ein Gästebuch
    gp 26.12.1 Das HTML-Formular (guestbook.html)
    gp 26.12.2 Das CGI-Programm (auswert.cgi)
    gp 26.12.3 Das HTML-Gästebuch (gaeste.html)
    gp 26.12.4 Das Beispiel ausführen
  gp 26.13 Ausblick


Galileo Computing - Zum Seitenanfang

26.4 Das dreistufige Webanwendungsdesign  downtop


Galileo Computing - Zum Seitenanfang

26.4.1 Darstellungsschicht  downtop

Die erste Stufe der Webprogrammierung ist die Darstellungsschicht. Dies stellt auch immer noch die weit verbreiteteste Schicht dar. Der Webbrowser fordert mit dem HTTP-Protokoll eine Datei vom Webserver an. Der Webserver schickt dem Browser anschließend diese Datei, was meistens die Darstellung einer einfachen Webseite ist. Zur Darstellungsschicht gehört das ganze Look & Feel einer Seite, wie etwa Mausklicks, Lesevorgänge usw., eben einfach alle Interaktionen des Nutzers. Die Darstellungsschicht wird mithilfe von Webscripting-Sprachen wie z.B. HTML oder Javascript erarbeitet. Dabei handelt es sich um interpretierte Sprachen, die erst beim Zugriff der Webseite auf den Webserver analysiert werden.


Hinweis   Um Webseiten darzustellen, müssen die Regeln befolgt werden, die ein Webbrowser erwartet. Damit eine Webseite richtig dargestellt wird, sucht der Webbrowser nach einer bestimmten Struktur, die durch HTML geliefert wird. Die Hypertext Markup Language (HTML) ist eine Seitenbeschreibungssprache, die verwendet wird, um Webdokumente zu erzeugen, die Verknüpfungen zu anderen Webdokumenten (Hyperlinks oder einfache Links) enthalten. HTML ist keine Programmiersprache, sondern eine bestimmte Menge von Regeln, mit denen eine Webseite formatiert wird.



Hinweis   Als Webprogrammierer sollten Sie HTML verstehen. Egal, ob Sie Ihre Webseiten mit Skriptsprachen wie Perl, PHP oder der Programmiersprachen C/C++ schreiben, Sie werden dabei immer wieder in Berührung mit HTML kommen. Zwar besteht ein beträchtliches Maß der Arbeit eines Webprogrammierers in der gleich folgenden Verarbeitungs- und Speicherschicht, dennoch werden Sie häufiger in die Verlegenheit kommen, dynamische Dokumente in der Darstellungsschicht zurückzuliefern.

Häufig kann es auch sein, dass die Darstellungsschicht ebenfalls nur aus dynamischen Dokumenten besteht. Es muss sich also nicht immer um eine statische Webseite handeln. Da aber dieses Buch solche Bedingungen nicht voraussetzen kann, wurden die Beispiele so geschrieben, dass HTML-Ausgaben in Funktionen unterteilt sind. Und zwar so, dass Ihnen im Prinzip egal sein kann, was diese Funktion ausgibt. Sie müssen den Funktionen lediglich die richtigen Argumente übergeben.



Galileo Computing - Zum Seitenanfang

26.4.2 Verarbeitungsschicht  downtop

In der Verarbeitungsschicht finden Vorgänge wie Fehlerprüfungen, Plausibilitätsprüfung und Auswertung der Formularfelder statt. Wird z.B. eine E-Mail aus einer Webanwendung verschickt, wird in der Verarbeitungsschicht überprüft, ob die Eingaben richtig sind. Danach wird koordiniert, mit welchem E-Mail-Programm diese Mail versendet wird. In der Verarbeitungsschicht werden natürlich noch eine Menge anderer Arbeiten verrichtet. Dazu erfahren Sie ja im Laufe dieses Kapitels mehr. Die Verarbeitungsschicht wird häufig mit interpretierten Scripting-Sprachen wie Perl, PHP, ASP und Programmiersprachen wie C/C++ erledigt. Interpretierte Sprachen sind bei gewissen Verarbeitungsvorgängen recht langsam und werden daher auf der Serverseite ausgeführt. Und um nochmals auf das Beispiel mit dem E-Mail-Programm zurückzukommen: Auf Serverseite ist dabei sichergestellt, dass die E-Mail mit einem bestimmten Programm (meistens mit dem Programm sendmail) versendet wird. Auf Seite des Clients würde das wiederum voraussetzen, dass der Nutzer dieses Programm auf seinem Computer installiert hat. Das ist nicht unbedingt benutzerfreundlich.


Galileo Computing - Zum Seitenanfang

26.4.3 Speicherschicht  toptop

Irgendwann werden Sie auch Daten speichern wollen. Es gibt viele Gründe, Daten zu speichern, seien es Statistiken, Berechnungen oder Registrierungsdaten. Und je komplexer und umfangreicher die Daten werden, die Sie zu speichern beabsichtigen, umso besser muss die Lösung sein. Für einen simplen Besucherzähler reicht eine Textdatei aus, da sich darin immer nur eine Zahl befindet. Aber sobald Sie Anwendungen wie einen Online-Shop erstellen wollen, kommen Sie um eine Datenbank nicht mehr herum. Denn müssen Sie dabei Daten ändern, löschen oder Teile der Daten extrahieren, ist dies bei einer Datenbank häufig mit wenig Code zu bewerkstelligen. Heutzutage stehen auch eine Menge Datenbanklösungen für herstellerspezifische Erweiterungen zur Verfügung. Und vor allem, viele dieser Lösungen kosten kaum Geld. Mehr dazu erfahren Sie in Kapitel 27, MySQL und C.

 << zurück
  
  Zum Katalog
Zum Katalog: C von A bis Z
C von A bis Z
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-UNIX-Programmierung






 Linux-UNIX-Programmierung


Zum Katalog: C/C++






 C/C++


Zum Katalog: UML 2.0






 UML 2.0


Zum Katalog: Reguläre Ausdrücke






 Reguläre Ausdrücke


Zum Katalog: Linux






 Linux


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Galileo Press 2006
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de