Projektpraktikum Erstellen eines Webportals geschrieben in LATEX

Werbung
Projektpraktikum
Erstellen eines Webportals
geschrieben in LTEX
A
Neumann Andreas
12. Juli 2007
1
Inhaltsverzeichnis
1 Aufgabenstellung
1.1
1.2
ursprüngliche Aufgabenstellung . . . . . . . . . . . .
Erweiterte Aufgabenstellung . . . . . . . . . . . . . .
1.2.1 Preisvergleich verschiedener Händler . . . . .
1.2.2 Vergleich der Miniaturbilder mit Orginalbilder
2 Verwendete Technologien
2.1
2.2
2.3
2.4
2.5
2.6
Apache . . . . . . . . . . . . . .
PHP . . . . . . . . . . . . . . .
Zugri auf Webdatenbanken . .
Ajax . . . . . . . . . . . . . . .
2.4.1 Das Konzept von AJAX
CSS . . . . . . . . . . . . . . .
Javascript . . . . . . . . . . . .
3 Realisierung
3.1
3.2
3.3
3.4
Die Startseite des Portals .
Die Vergleichsseite . . . .
Administrationsinterface .
Das Ajaxinterface . . . . .
.
.
.
.
.
.
.
.
4 Reexion
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
3
3
3
4
4
4
5
5
5
6
6
7
. 7
. 7
. 9
. 12
13
2
1 Aufgabenstellung
1.1 ursprüngliche Aufgabenstellung
Aufgabenstellung von Univ.-Ass. Dipl.-Ing. Dr. Hilda Tellio§lu: web portal
für ein fachgeschäft für modelleisenbahn (z.b. http://www.memoba.at/ ist
katastrophal) die technologien können sein - egal welches thema:
- ajax + php
- ajax + jsp
- ajax + ruby
- tapestry
- ...
1.2 Erweiterte Aufgabenstellung
Es soll ein Webportal sein, die völlig neue Features bereitstellt.
1.2.1 Preisvergleich verschiedener Händler
Entwickeln eines Webportals in dem verschiedene Händler zu vorgegebene
Kategorien Produkte, Lieferbedingen usw. eintragen können. Interessierte
Benutzer können mittels Browser diese verschiedenen Angebote auf diesem
Portal betrachten und mit Produkten von anderen Händlern vergleichen. Die
verschiedenen Händler können sich über ein Administrationsinterface einloggen und Produkte hinzufügen, bearbeiten und natürlich auch löschen. Der
Händler kann auch zu seinen Produkten einen Link, der direkt auf den Shop
des Händlers führt, eintragen. Es soll auch eine Möglichkeit geben, dass der
Händler für seine Produkte ein Bild auf das Portal laden kann. Dieses soll
dann den Benutzer eine Hilfe für die Auswahl sein.
1.2.2 Vergleich der Miniaturbilder mit Orginalbilder
Bilder der einzelnen Modellbahnen die Händler bei ihren Produkten hinzugefügt haben sollen mit Orginalbildern verglichen werden, um den Benutzer
die Entscheidung für einzelne Produkte zu erleichtern. Die Orginalbilder kann
nur der Administrator des Portals uploaden. Der User kommt dann einfach
mittels Link auf eine Seite in der die Bilder des Produktes geladen werden.
3
2 Verwendete Technologien
Da es auÿer Ajax keine speziellen Vorgaben gab, habe ich mich bei der Serverseitige Software für PHP mit einer Mysql- Datenbank entschieden. Fast
jeder Provider bietet einen Webspace mit PHP und MySql an. Zudem sind
die Preise für einen Webspace mit PHP und Mysql gegenüber anderen Skriptsprachen günstig. Dieses Portal wurde auf einen Testrechner mit dem Betriebsystem Fedora, die Webserversoftware Apache, Skriptsprache PHP, MysqlDatenbank, Javascript, CSS und AJAX entwickelt.
2.1 Apache
Der Apache HTTP Server ist ein Produkt der Apache Software Foundation
und der meistverbreitete Webserver im Internet, noch vor dem Internet Information Services (IIS) von Microsoft. Der Apache-Webserver ist modular
aufgebaut: Durch entsprechende Module kann er beispielsweise die Kommunikation zwischen Browser und Webserver verschlüsseln (mod_ssl), als ProxyServer eingesetzt werden (mod_proxy) oder komplexe Manipulationen von
HTTP-Kopfdaten (mod_headers) und URLs (mod_rewrite) durchführen.
(4)
Der Apache bietet die Möglichkeit, mittels serverseitiger Skriptsprachen
Webseiten dynamisch zu erstellen. Häug verwendete Skriptsprachen sind
PHP oder Perl. Diese sind kein Bestandteil des Webservers, sondern müssen ebenfalls entweder als Module eingebunden werden oder über die CGISchnittstelle angesprochen werden. (4)
2.2 PHP
Für kleine bis mittelgroÿe Web-Lösungen stellt PHP eine sehr interessante
Plattform dar. Der wesentliche Vorteil liegt in der schnellen Erlernbarkeit
und einfachen Handhabung. Dies gilt wie bei Perl vor allem für Entwickler
mit Unix-Hintergrund. Wie bei allen oenen Plattformen muss der Support
durch die Entwicklergemeinde besonders hervorgehoben werden. PHP Lösungen lassen sich auch schnell entwickeln. PHP eignet sich besonders gut für die
Erstellung von Prototypen. Ein weiteres Plus ist die Vielfalt der unterstützten Datenbanken. Die Plattformneutralität muss ebenfalls positiv gesehen
werden. Das mit PHP4 eingeführte Built-in Session-Tracking ist ebenfalls
ein Pluspunkt. Schwächen hat PHP bei der unzureichenden Separierung von
Präsentation und Code. PHP-Seiten neigen dazu, schnell auÿer Kontrolle zu
geraten. Ein weiteres Problem stellt die Erweiterbarkeit dar. Die Anzahl verfügbarer Module ist sehr groÿ uns steigt weiter an, aber das Modul für die
4
Logik der eigenen Lösungen muss geschrieben werden. Die Entwicklung eigener PHP-Module gestaltet sich aufwendig. Dies macht sich negativ auf die
exible Anbindung bestehender Applikationen bemerkbar.(2)
2.3 Zugri auf Webdatenbanken
Mit allen relevanten serverseitigen Skriptsprachen können Sie auf Datenbanken zugreifen. Und gerade PHP bietet dazu eine riesige Sammlung sehr
einfach anzuwendender Funktionen. Im Fall von Webdatenbanken kommt
fast ausschlieÿlich ein Datenbankverwaltungssystem bzw. ein Datenbankserver zum Einsatz, über den ein indirekter Zugri auf eine Datenbank erfolgt.
Einen der derzeit wohl populärsten Vertreter schuf ein Programmierer namens Michael Widenius in der ersten Form bereits 1994 mit dem Open Source
Datenbankverwaltungssystem MySQL. Mysql gibt es für die meisten wichtigen Betriebssysteme und wird aus PHP heraus durch eine Vielzahl von
Funktionen hervorragend unterstützt. Natürlich gibt es zahlreiche Alternativen wie MS SQL-Server, DB2, Oracle oder Interbase.(1)
2.4 Ajax
Sehr viele Leute glauben, dass AJAX eine Programmiersprache ist. Dies ist
aber nicht so. AJAX ist vielmehr ein Konzept, wie mehrere längst etablierte
Technologien des Internets in einem geregelten Zusammenspiel neue Möglichkeiten für Internetentwickler und Anwender erönet. Das betrit insbesondere die Datenübertragung zwischen Webserver und Internetbrowser.
Dass Ajax keine Programmiersprache ist, beweist allein schon der Begri
AJAX selbst. AJAX steht für Asynchronous Javascript eXtensible Markup
Language.(3)
Normalerweise wird eine Seite vom Webserver als ganzes geladen. Wird jetzt
z.B. von einer Seite in der links von der Seite die Linkliste und auf der rechten Seite der Inhalt(text) der Seite steht eine neue Informationen von dieser
Seite angefordert so muss der ganze Inhalt das heiÿt die Linkliste und der
neue Inhalt neu geladen werden, aber in Wirklichkeit hat sich aber nur der
Informationstext geändert.
2.4.1 Das Konzept von AJAX
AJAX arbeitet ähnlich wie eine Desktop-Anwendung. Bei Anwendungen die
das AJAX-Konzept verfolgt werden die Seiten nicht als ganzen neu geladen.
Durch den neuen Ansatz können die Informationen zum und von Webserver
5
so übertragen werden, dass nur mehr die neuen Information der Seite übertragen und nicht die ganze. Dieses Konzeptes des Nachladens anstatt des
Neuladens ist Hauptbestandteil der Revolution namens AJAX.
Durch das Nachladen von Inhalten im AJAX-Stil müssen sie nie mehr
warten, bis sich die ganze Seite aufgebaut hat. Da nur noch die nötigen Daten
übertragen werden müssen, gewinnen Weboberächen mit AJAX enorm an
Geschwindigkeit. Das heiÿt, dass Ihre in Ihrer Eigenschaft als User getätigten
Aktionen viel schneller zu einer Reaktion führen. Und nicht nur das: Während
Daten per AJAX vom Server geladen werden, könne Sie munter weiter Ihre
Mausklicks auf der Webseite platzieren. Das Übertragen der Daten geschieht
schlieÿlich ganz nebenbei.(3)
2.5 CSS
Cascading Stylesheets (CSS) sind die Kosmetiktäschchen für HTML-Seiten.
Während Sie Hypertext Markup einzig und allein dafür verwenden sollen,
ein Dokument zu strukturieren und logisch zu gliedern, können Sie mit CSS
Farben, Schriftgröÿen, Textausrichtung, Hintergrundfarben, Ränder, Position und vieles, vieles mehr bestimmen. Cascading Stylesheets erblickten 1994
das Licht der Welt. Seitdem haben sie kontinuierlich an Bedeutung gewonnen und werden und werden es auch weiterhin tun. Ist CSS schon heute ein
mächtiges Werkzeug zur Gestaltung einer Internetseite, so wird der Funktionsumfang mit der nächsten Version, CSS 3, noch enorm zunehmen. Im
Zusammenhang mit AJAX sind Cascading Stylesheets sehr wichtig, wenn
auch eher indirekt. Auf die asynchrone Datenübertragung hat CSS natürlich
keinen Einuss- doch das Auge klickt ja schlieÿlich mit. Die tollsten interaktiven Weboberächen mit AJAX sind nur halb so gut, wenn sie nicht auch
optisch was hermachen und den Benutzer so ermuntern, seine Maus auf die
richtige Stelle zu platzieren. (3)
2.6 Javascript
Bei Javaskript handelt es sich um eine objektorientierte Skriptsprache, die
einst von Netscape entwickelt wurde, um HTML-Daten, die sich bereits im
Browser benden, ein wenig aufzupeppen und dynamischer zu gestalten. Das
Herzstück von AJAX, die AJAX Engine, besteht ausschlieÿlich aus Javascript. In der AJAX-Engine wird der komplette Datentransfer einer AJAXAnwendung gesteuert. AJAX-Anwendungen leiten Ihren Wunsch nach neuen
Daten nicht direkt an den Server, was ein unerwünschtes Neuladen der Seite
zur Folge hätte, sondern direkt an die Engine. Javascript sorgt zudem dafür,
6
dass neue Inhalte an die richtige Stelle im Browser gesetzt werden. Darüber
hinaus kann Javascript gezielt auf Ereignisse wie Tastatureingaben, Klicks
oder Mausbewegungen reagieren oder durch das setzten von Zeitintervallen
eigene Ereignisse auslösen. Dadurch ist es beispielsweise dem Client möglich,
nach Benutzeraktionen oder in bestimmten zeitlich Abständen Daten vom
Server zu holen oder an ihn zu schicken.(3)
3 Realisierung
Das Webportal wird am Ende aus zwei gröÿeren Seiten bestehen.
3.1 Die Startseite des Portals
Die Startseite des Portals soll sehr einfach gehalten werden und kurze einfache
Informationen über das Fachgeschäft bereitstellen. Die horizontale Linkliste
führt zu den allgemeinen Informationen des Ladens wie Kontakt, Anfahrt,
Feedback und News. Der Button Produkte führt zum zweiten groÿen Teil des
Portals, den Vergleich der einzelnen Produkte und den Bildvergleich. Rechtliche Informationen des Herausgebers der Seite dürfen bei einer kommerziell
genützten Seite natürlich nicht fehlen. Damit sich der Benutzer auf der Startseite leichter zu Recht ndet, habe ich bei der Linkliste den Rollovereekt
der mittels Javascript realisiert ist, implementiert. Des Weiteren wird auf der
Startseite das Angebot der Woche dargestellt und auf der linken Seite werden
noch die News des Ladens angezeigt.
3.2 Die Vergleichsseite
Bei der Vergleichsseite gibt es auf der linken Seite eine Linkliste. Diese Linkliste wird zur Gänze aus der Datenbank gelesen. Diese Linkliste wird durch den
Administrator im Administrationsinterface geändert bzw. erstellt. Es wird in
diesem Portal grundsätzlich zwischen zwei verschieden Linktypen unterschieden. Links die weitere Links sog. Sublinks haben und Links die direkt einem
Produkt zugeteilt ist. Die Funktion die die verschiedenen Links aus der Datenbank liest, ist rekursiv gelöst. Es gibt verschiedene Ebenen der Links, die
mittels GET in der URL weitergeben werden. Die Ebenen dienen des Weiteren für einen optischen Eekt, denn jede Ebene hat einen gewissen Abstand
vom linken Rand. Somit entsteht ein Eekt dass manche Links tiefer sind als
andere.
Jeder Link hat in der Datenbank eine eindeutige ID, die in der Logik am
Webserver mit Produktkategorien verbunden sind. Zu einem Link kann es
7
auch ein Bild geben, dass angezeigt wird wenn der übergeordnete Link angeklickt wurde, wie das Bild zeigt.
Der User kann jetzt den Link von der Linkliste oder das Bild das zu dem
Abbildung 1: Linkliste mit Auswahl der Bilder
Link gehört anklicken. Falls es zu den Link Produktkategorien gibt, so werden alle in Form von einer Liste angezeigt. Bild. Wie man in diesen Bild
Abbildung 2: Anzeige der Produktkategorien mit Informationen
erkennen kann, sieht der Benutzer sofort den billigsten Preis und den dazugehörenden billigsten Händler. In dieser Liste kommt man mit dem Link
beim Produktnamen zu der Liste aller Händler die das Produkt anbieten. Des
Weiteren sieht man in diesem Bild einen Link der zum Bildvergleich führt.
Diese Funktion wird etwas später beschrieben.
Wählt der User den Produktnamen aus, so wird mittels eines Produktidentier (PID) der mittels der GET Methode an den Webserver gesendet wird eine
Datenbankabfrage gestartet. Diese sucht in der Tabelle in der die Händler ihre Produkte hinzufügen nach den Einträgen die auf die Produkt-ID passen.
Zur leichteren Übersicht sind die einzelnen Zeilen in der Tabelle mit verschiedenen Farben dargestellt. Die Liste die der Benutzer angezeigt bekommt, ist
nach dem billigsten Händler sortiert. In der Liste ndet man Informationen
über das Produkt wie den Namen, eine Beschreibung, Lieferzeit und natürlich die Spur. Es wird auch der Name des Händlers und ein direkter Link der
zu seinen Shop führt angezeigt.
8
Wenn der Händler ein Bild zu einen Produkt hinzugefügt hat, wird ein
Thumbnail in der Liste angeigt. Durch einen Klick auf das Bild, wird ein
neues Browserfenster mit einer gröÿeren Version des Bildes angezeigt.
Wenn der Benutzer den Link des Bildvergleiches wählt, so bekommt er eine
Gegenüberstellung von Orginalfotos mit den Fotos der Modelle die die Händler auf die Seite geladen haben. Durch anklicken der verschiedenen Bilder der
Händler bekommt man die Information dessen.
Abbildung 3: Bildvergleich auf der Seite
3.3 Administrationsinterface
Damit der Administrator bzw. die Händler keinerlei Kenntnisse über HTML,
PHP und Datenbanken haben müssen, gibt es ein Administrationsinterface.
Dabei wird zwischen zwei verschieden Benutzern unterschieden. Den Administrator, dieser darf alles ändern und den Händleruser, der nur Produkte
die er verkauft, über das Interface anlegen, bearbeiten und natürlich auch
löschen kann.
Der Administrator kann die Benutzer, die Linkliste, die Originalbilder, die
Produktkategorien und auch die Produkte verwalten.
9
• Benutzerverwaltung
Der Administrator bekommt durch anklicken auf den Link Benutzerverwaltung eine Liste mit allen Usern des Portals angezeigt. (siehe Bild)
Wie man sieht, kann man einfach durch anklicken von Links die User
löschen und bearbeiten und neue hinzufügen. User mit Rechte kleiner
als 11 sind Administratoren, alle anderen sind Händler. Wird ein Benutzer gelöscht so werden alle Einträge und Dateien des Users gelöscht.
Abbildung 4: Liste aller Benutzer des Portals
• Linkliste
Dies ist einer von den wichtigsten Punkte. Durch anklicken des Links
bekommt man eine Liste mit den Hauptlinks in der man die Link bearbeiten, löschen und auch neue Links hinzufügen kann. Durch anklicken
eines Links, so werden falls vorhanden die Links angezeigt die zu den
angeklickten Link gehören. Auch bei diese kann man wieder einfach
bearbeiten und löschen. Siehe Bild.
Möchte man einen Link hinzufügen, so muss man nur den Link HINZUFÜGEN folgen und man bekommt eine neue Seite in der man den
Linknamen und optional ein Bild angeben kann. Ein Dropdown Menü
hilft bei der Auswahl an welcher Stelle der Link in der Linkliste hinzugefügt werden soll. Hierbei bedeutet Hauptlink, dass dieser in der
ersten Ebene angezeigt wird und wenn man einen Link auswählt so
wird dieser automatisch zu den angegebenen Link hinzugefügt.
• Produkt-ID
Die Produkt-ID geht in Einklang mit der Linkliste. Denn wenn eine
Produkt-ID hinzugefügt wird, wird man meistens auch einen passenden
Link anlegen. Wenn man den Link Produkt-ID folgt so bekommt man
10
Abbildung 5: Tabelle mit allen Hauptlinks des Portals
eine Liste mit allen Einträgen. Diese Einträge kann man wieder wie
gewohnt ändern, löschen und auch hinzufügen.
Abbildung 6: Liste mit allen Produkt-IDs
• Produkte
Dies ist der wichtigste Link für die Händler. Durch anklicken bekommen
die Händler alle Produkte aufgelistet die er zurzeit im Portal eingetragen hat. Der Benutzer kann wieder wie gewohnt die Produkte hinzufügen, ändern und löschen. Das Bild zeigt wie man einen Produkteintrag
bearbeiten kann.
11
Abbildung 7: Bearbeiten eines Produktes vom Händler
• Orginalbilder
Der interessierte Portaladmistrator hat die Möglichkeit zu Produkten
Orginalfotos hinzuzufügen. Dies soll dem Käufer bei der Kaufentscheidung helfen, denn jeder Modellbaufreund möchte dass seine Modelle so
detailgetreu wie möglich sind.
3.4 Das Ajaxinterface
Das Ajax Interface soll als schnelle Suche für den User dienen. Das Interface
ist direkt über der Linkliste platziert. Diese Platzierung wird in der globalen
stil.css Datei deniert. Das Formular ist umgeben von einen span Container.
Die Anfrage wird mittels der id name gesendet und die Antwort wird mit
der id antwort identiziert. Gibt der User einen Buchstaben in das Formular
ein, so wird für jede Eingabe mittels Javaskript im Hintergrund per Eventhandler onkeypress() die Eingabe an den Webserver gesendet. Am Webserver
wird ein SQL Statement der alle Produktkategorien abfragt und diese mit
dem Eingaben des Users vergleicht. Gibt es Übereinstimmungen, so gibt das
Skript am Webserver die Liste mittels SELECT HTML Tag an den Browser
zurück. Der Vergleich beginnt immer am Wortanfang von Links nach Rechts.
Gibt zum Beispiel der User ein den Buchstaben T ein, so werden alle Produkte die mit T groÿ oder klein geschrieben angezeigt. Der Browser wertet die
Liste mit den Matches mittels Javaskript aus und stellt die Liste dar. Wählt
der User mittels Mausklick ein Element aus der Liste aus, so wird mittels
Javaskript die ID des Produkts an den Webserver gesendet und der Benutzer bekommt direkt alle Angebote der Händler für das Ausgewählte Produkt.
12
Abbildung 8: Ajax Liste aus der Datenbank
Abbildung 9: Ajax Liste mit Ergebnis im Hintergrund
4 Reexion
Durch das Projektpraktikum habe ich eine Menge an interessanten Technoliegen kennen gelernt. Am Anfang war es sehr schwierig die richtigen Technologien zu unterscheiden und sich für welche zu entscheiden.
• Programmiersprache: die Entscheidung viel am Schluss auf PHP, denn
nach langem Vergleich der Hostingangebote ist bei fast allen Webspace
angeboten PHP dabei. Wenn PHP nicht dabei war, so wurden meist
nur statische Seiten unterstützt. Für JSP, oder ASP müsste man meist
Aufpreise bezahlen. Weil die Seite ja entwickelt wird um einmal gehostet zu werden entschied ich mich für PHP. Des Weiteren ist die
Programmiersprache sehr gut für kleine bis mittelgroÿe Web-Lösungen
geeignet.
13
• Datenbank: bei der Datenbank ist die Entscheidung eigentlich sehr
leicht gewesen, weil es kaum andere Datenbanken bei Webspace Provider angeboten werden auÿer MYSQL. Diese Datenbank ist im Internet
weit verbreitet und deshalb ndet man sehr schnell Hilfe bei auftretenden Problemen.
• Webserver: Meine Wahl bei meiner Entwicklungsumgebung für die Webserversoftware viel auf den Apache 2 der zum Zeitpunkt meiner Arbeit in
der Version 2.2.3 aktuell war. Wieder war das ausschlaggebende Argument dass bei den meisten Webspaceangeboten der Apache im Einsatz
ist. Ich hatte keinerlei Probleme bei der Konguration.
Da dies mein erstes Projekt mit Webtechnologien war, hatte ich anfangs Probleme richtige Tools zu nden damit ich z.B. Grak bearbeiten kann. Da ich
sehr darauf geachtet habe, Open Source Software zu verwenden, viel meine
Entscheidung auf GIMP. GIMP unterstützt verschiedene aufeinander liegende Layer mit diesem spätere Änderungen einfach zu realisieren sind. Zum
schreiben der PHP, CSS, Javascript und HTML Dateien habe ich nur den VI
unter Linux verwendet.
Anfangs war das Konzept von HTML und CSS eine groÿe Umstellung für
mich, weil die Verbindung von einem Webserver zu einen Client(Browser)
stateless ist. Aber mit einem gewissen Zeitaufwand kann man HTML mit
oder ohne PHP erlernen. Die sicher schwierigste Aufgabe dieses Projektes
war das Administrator-Interface. Denn der User und der Portaladministrator benötigt keine Kenntnisse über HTML, PHP usw.. Ich habe versucht
dem User die Eingaben so einfach wie möglich zu gestalten natürlich sollte der Portaladministrator gewisse Erfahrung haben im Umgang mit HTTP
weil dieser ja die Linkliste auch anlegen muss.
Das AJAX Interface zu realisieren war für mich auch eine gewisse Herausforderung weil diese Technologie ziemlich tief in das Konzept der JAVASCRIPTS geht. Dieses Problem löste ich mit einigen Beispielen und natürlich
mit lesen einiger AJAX-Bücher.
Was mir eher leichter gefallen ist war das Handling mit der Datenbank. Denn
die Vorlesung der Datenmodellierung ist mir noch gut in Erinnerung und war
somit sehr Hilfreich bei meinen SQL-QUERYs.
Natürlich würde ich wenn ich das Projekt noch einmal machen würde, etwas
anders machen. Dies betrit jetzt Änderungen bei den vielen Auswertungen
in den PHP-Dateien, wobei man die meisten jetzt nicht mehr erkennen kann,
weil ich diese natürlich ausgebessert habe. Über die Art der Auswertungen
kann man natürlich diskutieren, denn ich habe für die Linkliste(IDx), für
14
die Produktliste mit Händler (PID) und für die Unterscheidung des Bildvergleichs (VID) jeweils eigene Identier verwendet.
Mit diesem Projekt konnte ich einiges dazu lernen, denn die Verwendung
von PHP, HTML, CSS und Javaskript war mir vorher nicht sehr geläug.
Natürlich kennt man die grundlegenden HTML Befehle aber mit PHP als
Programmiersprache kombiniert, macht das schreiben der einzelnen Seiten
richtig viel Spaÿ. Das Erstellen des Portals in diesen Projekt machte mir
sehr viel Spaÿ und ich würde das Thema natürlich wieder wählen.
Literatur
[1] Ralph Steyr, AJAX mit PHP, 2006, ADDISON-WESLEY
[2] Heiko Wöhr, Web-Technologien, 2004, dpunkt.verlag
[3] Denny Carl, Praxiswissen Ajax, 2006, O'Reilly
[4] http://de.wikipedia.org/wiki/Apache_HTTP_Server
15
Herunterladen