Dynamische Webanwendungen



Ähnliche Dokumente
Kommunikationsnetze. 7. Das World Wide Web 7.4 Client- vs. Server-basierte Techniken für dynamische Webseiten

Einführung in die Scriptsprache PHP

Online-Publishing mit HTML und CSS für Einsteigerinnen

Herzlich willkommen im Modul Web-Engineering

Einführung in die Skriptsprache PHP

André Maurer Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten

VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Kommunikation I (Internet) Übung 4 PHP

Web Visu Tutorial. Hipecs Web Visu. Übersicht

HTML5. Wie funktioniert HTML5? Tags: Attribute:

Python CGI-Skripte erstellen

Datenbanksysteme SS 2007

! " # $ " % & Nicki Wruck worldwidewruck

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Einführung in PHP. (mit Aufgaben)

HTTP-Server. Frank Wübbeling Universität Münster

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

Adminer: Installationsanleitung

Einführung Internettechnologien. - Clientseitige Programmierung -

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Aufgaben HTML Formulare. Prof. Dr. rer. nat. Claus Brell, Wirtschaftsinformatik, Statistik

CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung

Programmieren 2 (Prof. Hasbargen) Klausur

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

BFV Widgets Kurzdokumentation

Die aktuelle Version des SPIEGEL-Bestseller-Widgets können Sie auf unserer Website unter Entwicklertools herunterladen.

PHP - Projekt Personalverwaltung. Erstellt von James Schüpbach

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

Schiller-Gymnasium Hof

Herzlich willkommen im Modul Informatik Grundlagen

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Lokale Installation von DotNetNuke 4 ohne IIS

Wie funktioniert das WWW? Sicher im WWW

4D Server v12 64-bit Version BETA VERSION

Apache HTTP-Server Teil 2

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Typo3 - Schulung: Fortgeschrittene I an der Hochschule Emden/Leer

GEONET Anleitung für Web-Autoren

e-books aus der EBL-Datenbank

Anleitung für die Formularbearbeitung

WEBSEITEN ENTWICKELN MIT ASP.NET

Step by Step Webserver unter Windows Server von Christian Bartl

Anleitung BFV-Widget-Generator

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Konfiguration des Internet Explorers 7

IT-Zertifikat: Allgemeine Informationstechnologien II PHP

«Integration in WebSite» HTML-/Javascript-Code-Beispiele

8. Workshop - Internetarchivierung

Dynamik bis zur DB-Interaktion. Marc Schanne. CGI Möglichkeiten

START - SYSTEMSTEUERUNG - SYSTEM - REMOTE

Proseminar: Website-Management-Systeme

Computeria Solothurn

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Updatehinweise für die Version forma 5.5.5

Datenbank-basierte Webserver

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

Web-basierte Benutzerschnittstellen für Embedded Systeme: Eine Benutzerschnittstelle drei Sichtweisen

BFV Widget Kurzdokumentation

Agentur für Werbung & Internet. Schritt für Schritt: Newsletter mit WebEdition versenden

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Proseminar: Website-Managment-System. NetObjects Fusion. von Christoph Feller

Meine erste Homepage - Beispiele

Konfiguration des Internet Explorers 8

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

SharePoint Demonstration

Arbeiten mit dem neuen WU Fileshare unter Windows 7

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

SSO-Schnittstelle. Inhalt: Beschreibung der Single Sign-On (SSO) Schnittstelle. NetSlave GmbH Simon-Dach-Straße 12 D Berlin

DYNAMISCHE SEITEN. Warum Scriptsprachen? Stand: CF Carola Fichtner Web-Consulting

Webseiten sind keine Gemälde. Webstandards für ein besseres Web. Webstandards für ein besseres Web

Xampp-Installation und Konfiguration. Stefan Maihack Dipl. Ing. (FH) Datum:

ASP: Active Server Pages

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

SJ OFFICE - Update 3.0

Backup der Progress Datenbank

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Dokumentation Externe Anzeige von Evento Web Dialogen

TimeMachine. Time CGI. Version 1.5. Stand Dokument: time.odt. Berger EDV Service Tulbeckstr München

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

plus Flickerfeld bewegt sich nicht

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Grundbegriffe der Informatik

TeamSpeak3 Einrichten

Standard Daten-Backup-Script

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Angreifbarkeit von Webapplikationen

ESB - Elektronischer Service Bericht

Inkrementelles Backup

Webalizer HOWTO. Stand:

Tutorial. In diesem Tutorial möchte ich die Möglichkeiten einer mehrspracheigen Web-Site erläutern.

ÖKB Steiermark Schulungsunterlagen

Pädagogische Hochschule Thurgau. Lehre Weiterbildung Forschung

Java Script für die Nutzung unseres Online-Bestellsystems

Sicherung persönlicher Daten

Transkript:

Dynamische Webanwendungen Mohamed Said Seminar Moderne Informatik Universität Dortmund SS 2003 Mohamed Said / 2003-05-30 1

Überblick Einleitung (Konzept) Client-seitiges Skripting mit JavaScript CGI Server-seitiges Skripting mit Perl Server-seitiges Skripting mit PHP Server-seitiges Skripting mit ASP Datenbank Anbindung Zusammenfassung Ausblick Mohamed Said / 2003-05-30 2

1. Einleitung 1.1Konzept der statischen Webanwendungen Klick auf einem Hyperlink liefert immer das gleiche Dokument Solche Dokumente nennt man statisch Mohamed Said / 2003-05-30 3

1. Einleitung 1.1Konzept der statischen Webanwendungen Schnell, einfach Verlinkung als grundlegende Eigenschaft Links repräsentieren Verzeichnisstruktur Nachteile: Nur Vorgedachtes, schwer änderbar (neues Layout) Keine Interaktion (E-Commerce Einkaufswagen) Mohamed Said / 2003-05-30 4

1.2Konzept der dynamischen Webanwendungen Client 1.Anforderung Server Antwort Programm ausführen Serverseitiges Programm Mohamed Said / 2003-05-30 5

1.2 Konzept der dynamischen Webanwendungen Auf anfrage (vom Server) erzeugte Dokumente nennt man dynamisch Unterscheidung zwischen: Client-seitige Webanwendungen: Benutzer interagiert mit der angezeigten Seite um Manipulationen vor zu nehmen. Server-seitige Webanwendungen: Benutzer interagiert mit dem Server Realisierung durch Skriptsprachen Mohamed Said / 2003-05-30 6

1.2 Skriptsprachen 1.2.1 Was sind Skriptsprachen Scripting bedeutet ursprünglich: Zusammenfassung von Kommandos, z.b. des Betriebsystemes, zu einem Script (Drehbuch), das in einer Datei gespeichert wird und wieder verwendet werden kann. Client-seitig: Einbettung in Html Unterschied zu Programmiersprachen: Sie werden interpretiert heutige Skriptsprachen haben viele der Abstraktionsmöglichkeiten von System- Programmiersprachen (z.b. Objektorientierung, Modularisierung) Häufig benutzte Skriptsprachen sind: JavaScript, PHP, Perl und ASP Mohamed Said / 2003-05-30 7

2. Client-seitiges Skripting mit JavaScript 2.1 Geschichte Von Netscape Communication Corp. 1995 entwickelt Interpreter in fast allen Browsern vertreten Vor 1998 zwei verschiedene Dialekte: JSkript (Mikrosoft) und JavaSkript (Netscape) Die European Computer Manufactures Association (ECMA) hat JavaScript standardisiert. Dieser Standard wird als ECMAScript bezeichnet. Mohamed Said / 2003-05-30 8

2. Client-seitiges Skripting mit JavaScript 2.2 Konzept Code wird direkt im Html-code rein geschrieben (oder ext. über einen src Verweis verbunden) Kann über das Tag <script> oder eines der in Html definierten Ereignisattribute (onload, etc.) eingebunden werden Dem Browser muss mitgeteilt werden um welche Skriptsprache es sich handelt <script type= text/javascript >...Skript-Code... </script> Mohamed Said / 2003-05-30 9

2. Client-seitiges Skripting mit JavaScript 2.2 Konzept 1.Anforderung einer Webseite Client Server 2.Liefert Webseite mit JavaScript-Code 3.JavaScript-Code ausführen Der Code wird auf dem Rechner des Klienten herunter geladen und ausgeführt Mohamed Said / 2003-05-30 10

2. Client-seitiges Skripting mit JavaScript 2.2 Konzept Mohamed Said / 2003-05-30 11

2. Client-seitiges Skripting mit JavaScript 2.2 Vor- und Nachteile + Da Ausführung direkt auf dem Client-Rechner schnell + Webserver wird nicht belastet + Sicherheitsrisiko gering, da zugriff auf der Festplatte sehr eingeschränkt oder gar nicht möglich ist - Jeder hat Einblick auf den Code Andere wichtige Client-Seitige Skriptsprachen sind: tcl (unter Unix/Linux) und VBScript (Microsoftplattform). Diese Haben aber nicht die breite Unterstützung wie JavaScript Mohamed Said / 2003-05-30 12

3. CGI (Common Gateway Interface) 3.1 Was ist CGI Ist keine Skript Sprache sondern eine Schnittstelle die einen Webserver mit externen Programmen verbindet Prinzipiell können von der CGI beliebig ausführbare Programme aufgerufen werden CGI Programme können in jede Sprache geschrieben werden (meist aber Perl) Mohamed Said / 2003-05-30 13

3. CGI (Common Gateway Interface) 3.2 Wie funktioniert CGI Nach dem klick auf einen bestimmten Hyperlink (oder den Abschicken-Schalter eines Formulars) 1. Der Browser schickt den die URL des CGI-Progr. An den Webserver. http://webserver/cgi-bin/programm.pl #cgi-bin ist das Prgr. Verzeichnis. 2. Der Server sucht, nach erhalt, das CGI-Progr. auf der Festpatte und führt es aus. 3. Das CGI-Progr. Erzeugt als Ausgabe eine HTML-Datei, die es an den Server zurückgibt. 4. Der Webserver schickt die Ausgabe des Programms an den Browser. Mohamed Said / 2003-05-30 14

3. CGI (Common Gateway Interface) 3.2 Wie funktioniert CGI Mohamed Said / 2003-05-30 15

3. CGI (Common Gateway Interface) 3.2 Was kann mit CGI machen Webseiten dynamisch erstellen lassen Formulareingaben verarbeiten Kleine Dienstprogramme verarbeiten (Passwortabfragen, Zugriffszähler...) Vorteile + können Daten, die vom Browser kommen, auf dem Server abspeichern (Beispielsweise Kundenbestellung). + Auch umgekehrt, können Daten vom Server in Webseiten einbauen (Datenbanken) - Für jede Anfrage wird ein neuer Prozess gestartet -> Servergeschwindigkeit?? Mohamed Said / 2003-05-30 16

4. Server-seitiges Skripting mit Perl 4.1 Allgemein PERL: Practical Extraction And Report Language Entwickelt 1987 von Larry Wall Ist auf Unix/Linux-Rechnern weit verbreitet. Kein extra Compiler nötig. Programme werden beim Aufruf übersetzt. Kostenlos verfügbar, Open Source. Verfügt über eine umfangreiche, öffentliche Bibliothek von nützlichen Progr. Modulen (Das CPAN). Stark in der Text-Verarbeitung: Einsatz in der Systemadministration. Die erste Wahl für die cgi-programmierung. Mohamed Said / 2003-05-30 17

4. Server-seitiges Skripting mit Perl 4.2 Funktionsweise Das Perl-Programm erhält Eingabe-Parameter z.b. aus HTML-Formularen Es liefert HTML-Texte: # Das Hello-World-Programm in Perl print "Content-Type: text/html\n\n"; print "<h2><font color=red>hello World!</font></h2>"; Die Content-Type-Ausgabe veranlasst den Server, den korrekten http-header für HTML- Texte zu produzieren. Die extra Leerzeile beendet diesen Header Mohamed Said / 2003-05-30 18

4. Server-seitiges Skripting mit Perl 4.2 Übermittlung von Formulardaten an Perl Erste Variante GET-Methode: Der Query-String ist über die Umgebungs-Variable QUERY_STRING zugreifbar. HTML <form method=get action=cgi-bin/greet.pl> <input type=text size=12 name=name> <input type=submit value="submit"> </form> Perl print "Content-Type: text/html\n\n"; $query = $ENV{'QUERY_STRING'}; $query =~ /name=(.*)/; $who=$1; print "<h1>hello $who!</h1>"; Mohamed Said / 2003-05-30 19

4. Server-seitiges Skripting mit Perl 4.2 Übermittlung von Formulardaten an Perl Zweite Variante POST-Methode: Der Query-String steht im Perl-Programm als Standardeingabe STDIN zur Verfügung. HTML <form method=post action=cgi-bin/greet.pl> <input type=text size=12 name=name> <input type=submit value="submit"> </form> Perl print "Content-Type: text/html\n\n"; print "<h1>my Query String is: </h1>"; print <STDIN>; Mohamed Said / 2003-05-30 20

5. Server-seitiges Skripting mit PHP 5.1 Allgemein PHP: Anfang 1995 von Rasmus Lerdorf entwickelt. PHP stand zunächst für Personal Homepage Tools. Jetzt steht das Kürzel für Hypertext Preprozessor. Eine in HTML eingebettete, serverseitige Skriptsprache Die Syntax von PHP ist stark an der Programmiersprache C orientiert, auch Javaund Perl-Elemente. Unabhängig von der Systemplattform. Sowohl unter UNIX- als auch unter Microsoft- Betriebssystemen. Steht in zwei Versionen zur Verfügung. PHP 3 und PHP 4 Ein Open Source Projekt Mohamed Said / 2003-05-30 21

5. Server-seitiges Skripting mit PHP 5.1 Allgemein PHP 3 eine reine Interpretersprache PHP 4 Verwendet als Bytecode-Compiler die ZEND Scripting-Engine. Verarbeitungsgeschwindigkeiten höher als bei PHP 3. PHP 4 ist (größtenteils) abwärtskompatibel zu Version 3. Stärken sehr große Menge von Funktionen gute Datenbankanbindung Mohamed Said / 2003-05-30 22

5. Server-seitiges Skripting mit PHP 5.2 Einbettung in HTML Dateien heißen nicht mehr.html oder.htm sondern.php oder php. PHP-Code wird durch folgenden Tag in den HTML-Code eingebunden: XML-Stil: <?php...?> (empfohlen) Andere Möglichkeiten SGML-Stil: <? code?> ASP-Stil: <% code %> JavaScript-Stil: <script language="php"> code </script> Mohamed Said / 2003-05-30 23

5. Server-seitiges Skripting mit PHP 5.3 Beispiel <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <title>php-test</title> </head> <body bgcolor="white"> <?php print "<h1>"; print "Willkommen bei PHP!"; print "</h1>";?> </body> </html> Mohamed Said / 2003-05-30 24

5. Server-seitiges Skripting mit PHP 5.3 Beispiel Ausgabe Mohamed Said / 2003-05-30 25

5. Server-seitiges Skripting mit PHP 5.3 Beispiel Ausgabe <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <title>php-test</title> </head> <body bgcolor="white"> <h1>willkommen bei PHP!</h1></body> </html> Mohamed Said / 2003-05-30 26

6. Server-seitiges Skripting mit ASP 6.1 Allgemein ASP: Active Server Pages, ist keine Programmiersprache (Technologie) Eigens für die Erstellung von dynamischen Webseiten auf dem Internet Information Server von Microsoft konzipiert. Durch Produkte von Fremdanbietern auch auf anderen Betriebssystemen lauffähig ASP-Code wird in HTML-Code eingebettet und bei Aufruf der Seite durch das ASP- Modul ausgeführt (Datei Endung:.asp) Eine hocheffiziente Alternative für CGI Anwendungsprogrammierung Standardprogrammiersprachen für ASP sind VBScript und JScript 1997 ASP 1.0, 1998 ASP 2.0, 1999 ASP 3.0, 2002 ASP.NET Mohamed Said / 2003-05-30 27

6. Server-seitiges Skripting mit ASP 6.2 Beispiel <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <title>asp-test</title> </head> <body bgcolor="white"> <% Response.Write "<h1>" Response.Write "Willkommen bei ASP!" Response.Write "</h1>" %> </body> </html> Mohamed Said / 2003-05-30 28

6. Server-seitiges Skripting mit ASP 6.2 Beispiel Mohamed Said / 2003-05-30 29

6. Server-seitiges Skripting mit ASP 6.2 Beispiel <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <title>asp-test</title> </head> <body bgcolor="white"> <h1>willkommen bei ASP!</h1> </body> </html> Mohamed Said / 2003-05-30 30

7. Datenbank Anbindung 7.1Allgemein Datenbanken sehr wichtig für dynamische Webanwendungen. (Flug-online- Buchung). Skriptsprachen bieten Funktionen an um auf Datenbanken zu zugreifen. Bei PHP und ASP sind Datenbankunterstützungen mit eingebaut. Für Perl ist die Datenbank Anbindung umständlich, nur möglich über externe Module, je nach Datenbank sind diese verschieden. Mohamed Said / 2003-05-30 31

7. Datenbank Anbindung Mohamed Said / 2003-05-30 32

8. Zusammenfassung Mohamed Said / 2003-05-30 33

9. Ausblick Internet Ohne Dynamische Webanwendungen heute nicht Vorstellbar (E- Commerce) Perl liegt in der Webprogrammierung auf dem sterbenden Ast (keine Datenbank Unterstützung...) PHP und ASP setzen sich durch (Gute Datenbank Anbindung, große Entwickler- Community im Internet). durch rasante Entwicklung der Computertechnologie zu Client Server Systemen der Client übernimmt immer weniger Aufgaben Serverseitige Datenverarbeitungsschnittstellen und Programmiersprachen rutschen Immer weiter in den Vordergrund. Mohamed Said / 2003-05-30 34