Veranstaltung
Pr.-Nr.: 10 033 018
E-Business
Entwicklung web-basierter
Anwendungssysteme
Prof. Uwe H. Suhl
Chris Bizer
SS 2003
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Hallo
Dipl.-Kfm. Chris Bizer
Arbeitsgebiete:
E-Business und E-Commerce
Architekturen web-basierter Systeme
Semantic Web
Zimmer: 215
Sprechstunde: Mittwoch 13-15 Uhr
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Ablauf der heutigen Veranstaltung
Überblick über die Themen der Übung
Organisatorisches
CD-Katalog und Klausur
Einteilung der Gruppen und Vergabe der Kennwörter
Einführung in HTML und CSS
Einführung in Macromedia Dreamweaver
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Was sind web-basiertes Anwendungssysteme?
eShops (z.B. Amazon)
Online Auktionen (z.B. eBay)
Job-Börsen (z.B. DV-Job)
Web-basierter eMail-Clients (z.B. GMX)
Homebanking-Zugänge (z.B. Sparkasse)
Meinungsportale (z.B. dooyoo, ciao)
CarConfigurator (z.B. BMW)
Alle diese Anwendungen basieren auf
einer ähnlichen Systemarchitektur
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Was ist ein web-basiertes Anwendungssystem?
Eine web-basiertes Anwendungssystem ist ein meist
interaktives Webangebot, dessen Inhalte nicht
statisch in Form von fertigen HTML-Seiten vorliegen,
sondern dynamisch zur Laufzeit aus
unterschiedlichen Datenquellen erzeugt werden.
Vergleich:
Klassische Web-Architektur
Architektur web-basierter Anwendungssysteme
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Die klassische Architektur des WWW
Client
Browser
(IE, Netscape)
Server
Internet/
Intranet
Webserver
Programm
HTMLDateien
(Apache, IIS)
Client-Server Architektur
Client stellt Anfragen an den Server (HTTP)
Server beantwortet die Anfragen (HTTP / HTML)
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Architektur WBAS
Präsentation
Applikation
Datenhaltung
Webserver
Client
Internet
Browser
HTTP/
SSL
ServerProgramm
(Apache)
ScriptingEngine
(PHP)
HTMLDateien
PHP
Skripte
Datenbank
(MS Access)
ODBC
XML
XMLRepository
(Tamino)
XML
Applikations-Server
Datenbank
(z.B. J2EE, .net oder SAP)
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Inhalte der Übung
Präsentation
Applikation
Client
Webserver
Ü3
Internet
Browser
HTTP
Ü3
SSL
Ü 12
Datenhaltung
ServerProgramm
(Apache)
ScriptingEngine
(PHP)
Ü 1-2
HTMLDateien
Datenbank
(MS Access)
ODBC
Ü 4-7
PHP
Skripte
XML
XMLRepository
(Tamino)
XML
Ü 8-11
Applikations-Server
Datenbank
(z.B. J2EE oder SAP)
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 1 und 2: HTML
<HTML>
<HEAD>
<TITLE>Beispieldokument</TITLE>
</HEAD>
<BODY >
<P>Inhalt des Dokuments. Bla Bla Bla</P>
<P>Bla Bla Bla Bla Bla Bla Bla Bla Bla </P>
</BODY>
</HTML>
Heute:
Einführung in HTML und CSS
Einführung in Dreamweaver
Nächste Woche:
Praxis-Veranstaltung im Pool OR1
Gestaltung der Oberfläche des CD-Katalogs mit Dreamweaver
Aufgabenblatt 1
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 3-7: Apache und PHP
Apache
Administation und Konfiguration des Webservers
Sicherheitsfeatures von Apache
Aufgaben Server-Sided-Scripting
HTML-Templates dynamisch mit Daten aus Datenbanken füllen
Verarbeitung von Formulareingaben
Zugriff auf Backoffice-Anwendungen
Gängige Server-Sided-Scripting-Sprachen
Personal Home Page Tools (PHP), Active Server Pages (ASP)
Cold Fusion (CF), Java Server Pages (JSP)
Perl, Python
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 3-7: PHP-Beispielskript
Die Anweisungen sind in den HTML-Code eingebettet
<HTML><HEAD>
HTML-Code
<TITLE>Zahlen von 1 bis 10</TITLE>
</HEAD><BODY ><P>
<?php
PHP-Code
for ($i =1; $i<=10; $i++) {
echo $i . ‘ <BR> ‘ ;
}
HTML-Code
?>
</P></BODY></HTML>
Ergebnis des Skripts
<HTML><HEAD>
<TITLE>Zahlen von 1 bis 10</TITLE>
HTML-Code
</HEAD><BODY ><P>
1 <BR> 2 <BR> 3 <BR> 4 <BR> 5 <BR> 6 <BR> 7 <BR>
8 <BR> 9 <BR> 10 <BR>
<P></BODY></HTML>
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 8-11: XML und Co.
Einsatzgebiete von XML
Kommunikation zwischen Applikationen
- Enterprise Application Integration (EAI)
- XML/EDI
Publishing für unterschiedliche Clients
- Z.B. Web-Browser, WAP-Handy, PDA, Print
und Vieles mehr …
Inhalte
XML-Syntax
Document Type Definitions (DTDs)
Namespaces
Xpath
XSLT
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 8-11: XML Beispiel-Dokument
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE BESTELLUNG SYSTEM "BESTELLUNG.DTD">
<BESTELLUNG>
<AUFTRAGSKOPF>
<NAME>Mustermann</NAME>
<DATUM>02.10.2000</DATUM>
<E-MAIL>[email protected]</E-MAIL>
</AUFTRAGSKOPF>
<AUFTRAGSPOSITIONEN>
<POSITION>
<BEZEICHNUNG>Festplatte</BEZEICHNUNG>
<ARTIKELNUMMER>123456</ARTIKELNUMMER>
<ANZAHL>5</ANZAHL>
</POSITION>
<POSITION>
<BEZEICHNUNG>Monitor</BEZEICHNUNG>
<ARTIKELNUMMER>9876</ARTIKELNUMMER>
<ANZAHL>1</ANZAHL>
</POSITION>
</AUFTRAGSPOSITIONEN>
</BESTELLUNG>
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Termin 12: Sicherheit und Kryptographie
Secure Socket Layer (SSL)
Verschlüsselte Datenübertragung Browser/Webserver
Pretty Good Privacy (PGP)
Mail- und Datei-Verschlüsselung
-----BEGIN PGP PUBLIC KEY BLOCK----Version: PGPfreeware 7.0.3 for non-commercial use <http://www.pgp.com>
mQENBDxw7eQBCAC2Qu/j5Olri6h1LEBi60Q5INBSdWFW0IUxubh9q8kZhbFnGKiU
XJLN2kKlwxNP+aMFAzZ9ETi7c3vWxDde1gXAxvIV+phSn9RgsEPdz4cxwvTldGgB
xeRE7x8+YVfKjRjDwRO6BDuXvvkqvEAHD/L9OxxgihKkEJFSM2szz+gx/Ab5vEP8
QpzY7ipyNtOCGBM2pRV+xB+BeA3ybIiO7zyqRpR6ZqaWlWci7Rwg7oFZk1D3iM0S
lDBhRaYexuCv4fLLmBX6mrFLnun+JBt15ojM9H0xfPnF/XMJ6FHI3VlXLJ5HVwZl
isZFHy2DYrW4ZHOvBOZXXPMOgkazbdsr0Pj1ABEBAAG0HENocmlzIEJpemVyIDxj
aHJpc0BiaXplci5kZT6JAS4EEAECABgFAjxw7eQICwMJCAcCAQoCGQEFGwMAAAAA
CgkQJWGsstdhZY0q/wgArJyy3sXSUER9GVwun9q2qDbcJsAN0BzVzf1lwgkJ5iUZ
TEz2Sua6GPZ4wgZ5OfOTse5B7GRKTY1dgGl+4VoLpq3Tv/M0slre7AXwD2Li9E/K
aHEl7gFPHxbpXjCDSQnWLUi2+lbO9rTf3ia6gxtFgv3Sm7rAsQNE4q7eMQ022QUO
GidjiqFoBommYk0wJNU7IVPaMBIaA5J2oQSLxqTBtcd2LwGxELYCc8dLpf4cpaSe
ctk/V2Pjh5DYV+o8hPfwjtsCaGihkYWUxxtf/jMz3lfYJhwI0/sFKcYaKhoXEZys
YE/F1RsLtIhrTlH/moe8PfMPS/eCVqew1t/o5WtlJ7kBDQQ8cO3nAQgAutV274kz
JazptIfkt4MsjuR5r0FFNYsT1WRaC9i4RzCFKd84s0yJ9qPBB1hhnL1ZOtLQFXju
bNcSjiS/Y+EkR91hxc4ojYZ4h/8rwK0kwmk/pUQNBXNunnYP9gsqdktggMqeAMcA
drXnher942I/IbgsFWiNF7YCEtCbigB8yQ/tveYKb4ul6SvG3ksofE1xMHXkT+A3
MecICM67aYvpqyYN5hMphG0l3ii9YjYnaAGnBISu0B6X7DYzDm+rfxNWGOQmxTks
-----END PGP PUBLIC KEY BLOCK----Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Organisatorisches
Veranstaltungs-Homepage
Download des Skripts der Vorlesung und der Folien der Übung
Links zu den Softwareprodukten
Veranstaltungs-Webserver
Arbeitsgruppenbereiche (25 Stück)
URL: http://www3.wiwiss.fu-berlin.de/gruppeXX
Termine des Praxisteils im Pool OR1: 29.4, 13.5, 27.5.03
Softwarepakete im Pool OR1
Dreamweaver MX: HTML-Editor
Apache 2, PHP 4, 1st Page Editor, XTrans XML und XSLT Editor
Die Gesamtnote setzt sich aus Klausur und Fallstudie zusammen.
Aufbau der Klausur (40 Punkte)
1. Teil: Allgemeine Fragen zu E-Business (Inhalt: Vorlesung)
2. Teil: Aufgaben zu PHP und Datenbankzugriffen
3. Teil: Aufgaben zu XML, Xpath und XSLT
Letzte Übung am 15.7: Klausurvorbereitung
Anmeldung zur Klausur: Liste in Übung und Vorlesung
Fallstudie online CD-Katalog (10 Punkte)
Fragen?
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Hypertext Markup Language (HTML)
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Einführung
HTML ist eine Auszeichnungssprache für Web-Dokumente
Auszeichnungssprachen
Auszeichnen (Markup) bezeichnet den Prozess der Informationsanreicherung von Textdokumenten.
Durch Auszeichnung verschiedener Bereiche durch sogenannte
„Tags“ (Marken) kann sowohl das Erscheinungsbild als auch die
inhaltliche Struktur von Dokumenten spezifiziert werden.
<H1>Beispiel</H1>
<P><B>Hallo</B>, ich bin <I>HTML</I></P>
Start-Tag: Fett
End-Tag: Fett
Quellen zu HTML
Stefan Münz: SelfHTML 8.0: www.teamone.de/selfhtml
W3C: Spezifikationen HTML 4.0 und XHTML 1.0: www.w3.org/MarkUp/
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Entwicklung der Markup-Sprachen
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Aufbau eines HTML-Dokuments
<html>
<head>
<title>Beispieldokument</title>
<meta name="author" content="Chris Bizer">
<meta name="keywords" content="HTML, Beispiel">
Head Bereich:
Dokumentinformationen
(Autor, Keywords etc.)
</head>
<body bgcolor="#FFFFFF">
<H1>Beispiel</H1>
<P>
<B>Hallo</B>, ich bin ein ganzes
<I>HTML-Dokument</I>.
</P>
Body Bereich:
Eigentliches
Dokument
</body>
</html>
Dateiendungen für HTML-Dokumente: .htm .html
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
HTML-Editoren
Zur Oberflächengestaltung haben sich WYSIWYG-Editoren
durchgesetzt.
Gängige HTML-Editoren
Macromedia Dreamweaver
Microsoft Frontpage
Adobe GoLive
Wir verwenden Dreamweaver MX, weil
weitverbreiteter Profi-Editor, den viele Agenturen verwenden
gute Kontrolle über den HTML-Code
Bearbeitung von HTML-Dateien mit integriertem PHP-Code möglich
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Hyperlinks
Beispiel
Verzeichnis1/Dokument1.htm
Verzeichnis1/Dokument2.htm
Relativer Link zwischen Dokumenten auf einem Server
<P>Und das ist ein <a href="Dokument2.htm">Link</a>.</P>
Start-Tag:
Hyperlink
Ziel des
Hyperlinks
Text
End-Tag:
Hyperlink
Absoluter Link zwischen unterschiedlichen Servern
<a href=„http://www3.wiwiss.fu-berlin.de/
Verzeichnis1/Dokument2.htm">Link</a>
Hyperlinks in Dreamweaver
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Einbinden von Grafiken
Grafiken werden als gesonderte Datei auf dem Webserver
gespeichert.
Einbinden in das HTML-Dokument:
<img src="moby_play.gif" width="130" height="130" alt="Moby">
ImageTag
Quelldatei
Größenangaben
Alternativer
Text
Grafiken in Dreamweaver
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Formulare
Formularfelder werden in einem FORM-Tag eingeschlossen
Method: Wie Daten zum Server übertragen werden (POST/GET)
Action: Ziel zu dem die Eingaben geschickt werden
Formularfelder werden über INPUT-Tags definiert
Type: Typ des Formularfelds z.B. text, radio oder submit
Name: Name des Feldes; wird später Variabelenname in PHP
<form name="form1" method="post" action="auswerten.php">
Vorname: <input type="text" name="vorname"><br>
Matrikelnummer: <input type="text" name="matrikelnummer"><br>
<input type="submit" name="Abschicken" value="Abschicken">
</form>
Formulare in
Dreamweaver
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Tabellen
Breite der Tabelle
Rahmenbreite
Abstand zum Text
<table width="800" border="1" cellpadding="3">
<tr>
<td>Zelle
<td>Zelle
</tr>
<tr>
<td>Zelle
<td>Zelle
</tr>
Tabellenzeile
Tabellenfeld
1</td>
2</td>
3</td>
4</td>
</table>
Tabellen in
Dreamweaver
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Layouten mit Blindtabellen
Eine Blindtabelle ist eine Tabelle mit Rahmendicke null.
<table width="100%" border="0" cellpadding="20">
Blindtabellen lassen sich zum Layouten von HTML-Seiten
einsetzen.
Hintergrundfarbe für Zellen: <td bgcolor="#66CCCC">
Trick: Zellenbreiten mittels unsichtbarer Grafiken fixieren
<img src="transparent.gif" width="150" height="1">
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Gestaltung von Webseiten
Webseiten sollen für möglichst viele Besucher nutzbar sein
Unterschiedliche Browser
Unterschiedliche Bildschirmauflösungen
Unterschiedliche Endgeräte (PDAs, Handys, …)
"barriere-frei" d.h. auch Behinderten- und Blindengerecht
(www.einfach-fuer-alle.de)
Daher gilt meist die Design-Devise: Weniger ist mehr!
Häufigste Fehler:
Website geht an Bedürfnissen der Zielgruppe vorbei
- z.B. tolle Grafiken, Zielgruppe will aber schnelle Informationen
Zu aufwendiges Design oder ausgefallene Technologien
- lange Ladezeiten
- fehlende Plugins auf Benutzerseite
- Browserspezifische HTML-Erweiterungen (z.B. Netscape Layer-Tag)
Veraltete Informationen
Überprüfung von Webseiten auf Standardkonformität
W3C HTML-Validator: http://validator.w3.org
Zusätzlich: Website vor der Veröffentlichung mit verschiedenen Browsern testen
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Cascading Style Sheets (CSS)
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Cascading Style Sheets (CSS)
Was sind Cascading Style Sheets?
Sprache zur Definition von Formateigenschaften einzelner HTMLBefehle
Erweiterung zu HTML, vergleichbar Formatvorlagen in MS Word
Beispiel
Überschriften 1. Ordnung (H1) sollen eine Schriftgröße von 18 Punkt
haben, in der Schriftart Helvetica erscheinen, und mit einem Abstand
von 1,75 Zentimeter zum darauffolgenden Absatz versehen werden
Ziel
Genaue, browserunabhängige Definition des Aussehens einzelner
Elemente ohne Rückgriff auf das <FONT>-Tag
Einheitliches Layout (Corporate Design)
Standardisierung durch W3C
Versionen: CSS 1 und CSS 2
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Wie definiere ich Styles? (1)
Formate für HTML-Tags
<html>
<head>
<style type="text/css">
<!-h1 {
font-family: Verdana, Arial, Helvetica,
sans-serif; font-size: 18pt}
-->
</style>
</head>
<body>
<h1>Ich bin 18pt groß!</h1>
</body>
</html>
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Wie definiere ich Styles? (2)
Unabhängige Formate (lassen sich jedem Tag zuordnen)
<html>
<head>
<style type="text/css">
<!-.big {
font-size: 18pt; font-family: Verdana,
Arial, Helvetica, sans-serif}
-->
</style>
</head>
<body>
<h1 class="big">Ich bin auch 18 pt groß!</h1>
</body>
</html>
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Wo definiere ich Styles?
In der HTML-Datei
siehe vorherige Beispiele
In einer separaten Datei
Dateiendungskonvention: .CSS
Test.css
p {font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10pt; line-height: 14pt}
Test2.htm
<head> <title>Testseite 2</title>
Test1.htm
<link rel="stylesheet"
href="Test.css">
<html><head><title>Testseite
1</title>
</head>
.....
<link rel="stylesheet"
href="Test.css">
</head> .....
Vorteil: Zentrale Definition der Formateigenschaften
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
Schriftformate
Attribut
Werte
font-family:
Verdana, Arial, serif, sans-serif;
font-size:
24pt; 130 %, medium, large
font-weight:
bold; (bolder, lighter)
text-decoration:
underline; overline; blink;
color:
#CC0000, rgb(51,0,102), black;
margin-top:
margin-bottom:
margin-left:
margin-right:
2cm; 16pt;
line-height:
16pt;
text-align
left, center; right; justify (= als Blocksatz
ausrichten)
backgroundcolor:
#003366;
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03
File Transfer Protokoll (FTP)
FTP dient zur Übertragung von Dateien zwischen Computern
Der MS Internet Explorer beherrscht FTP
HTML-Dateien auf dem Veranstaltungs-Server speichern
Adresse eingeben: ftp://[email protected]/
Gruppenkennwort eingeben: siehe Zettel
Dateien in das Internet Explorer-Fenster ziehen
Uwe H. Suhl, Chris Bizer: E-Business - Entwicklung web-basierter Anwendungssysteme – SS03