- Vorwort
Mit dem Datenbanksystem MySQL und dem Webserver Apache wird
ein interaktiver E-Commerce-Shop entstehen. Dieser Shop wird die Moeglichkeit
beinhalten Artikel ueber ein Warenkorbsystem zu bestellen und auszuliefern.
Als Zusatzfunktion wird ein Multi-Haendler E-Commerce-System auf CRM Basis geschaffen
das die Moeglichkeit hat, eine Webseite Online zu administrieren sowie
Produkte auf einer Firmeneigenen Webseite zu verkaufen (xy.cyber-kauf.de).
Auf www.cyber-kauf.de werden alle Produkte aller Anbieter vertrieben.
Somit (unsere Idee) besteht die Moeglichkeit ein Onlinewarenhaus zu eroeffnen,
in dem der Kunde div. Produktinformationen erhaelt und diese Produkte auch
uebers Internet bestellen kann.
Als Haendler bezeichne ich Wiederverkaeufer die ueber Cyber-Kauf ihre Produkte vertreiben.
Diese Dokumentation wurde fuer das Internet entwickelt und ist auch nach der Technikerarbeit
dort in fortgefuehrter Form zu erhalten (www.hanschur.de).
Diese Arbeit wurde als OpenSource Projekt entwickelt
und wird von mir natürlich weiterentwickelt und optimiert.
In Zukunft wird Sie als Shopversion auf der
Webseite des Internetshops CYBER-KAUF eingesetzt
www.cyber-kauf.de
Das ganze Projekt basiert auf ASP-Basis mit MySQL und Perl
(HTML,CSS und XSSI ist natuerlich Voraussetzung).
Grosser Dank gilt auch für die Unterstuetzung und Begleitung meiner
Technikerarbeit Herrn Andreas Grupp und der Firma CYBER-KAUF.
- Kostenaufwand fuer die Firmengruendung
Das Betriebssystem Linux, auf welches wir dieses Projekt aufgesetzt haben ist Freeware
sowie die Datenbank MySQL, der Apache Webserver, etc.
Daher sind lediglich Kosten fuer die Anschaffung des Servers faellig. Diese Kosten waren
uns aber bereits seit Gruendung des Unternehmens Cyber-Kauf bekannt. Ansonsten konnte
die gesamte Infrastruktur von mir verwendet werden.
Anbei erhalten Sie eine Detailzeichnung der vorhandenen Infrastruktur
Beschreibung der Infrastruktur
Typ
|
Betriebssystem
|
Rechnerart
|
Server
|
Linux 7.1
|
AMD 300 MHZ 64 MB Haupspeicher
160GB Festplatte
100 Mbit Netzwerkkarte
2 Netzwerkdrucker
|
Testserver
|
Linux 7.1
|
Pentium 100 MHz
32 MB Hauptspeicher
10 Mbit Netzwerkkarte
|
Client 1
|
Windows 98 SE
Linux 7.1
|
AMD 500 MHZ 128 MB Hauptspeicher
20 GB Festplatte
100 Mbit Netzwerkkarte
|
Client 2
|
Windows 95 / 98
Linux 7.1
|
Acrobat Pentium 100 MHz
64 MB Hauptspeicher
100 Mbit Netzwerkkarte
|
I-MAC
|
OS 9.1
|
PowerPC G3 500 MHz
192 MB Hauptspeicher
100 Mbit Netzwerkkarte
|
Laptop
|
Windows 98
Linux 7.1
|
Celeron 366 MHz
64 MB Hauptspeicher
100 Mbit Netzwerkkarte
|
|
Der Server dient dazu, das die Technikerarbeit auf einer echten Serverumgebung
getestet wird.
|
Der Testserver wird verwendet um die verschiedenen Einstellungen z.B. beim Apache
Webserver mit mod_perl und ASP zu installieren bevor diese dann auf den Server uebertragen werden.
Client 1, Client 2 und der Laptop wird zur Programierung verwendet.
|
|
Der I-Mac ist fuer die Grafikbearbeitung sowie die Layoutgestaltung des Shops mit den
dazugehoerigen Webseiten sehr nuetzlich.
Somit wurden alle programmtechnischen Aufwendungen im hausinternen Netz erstellt und erst
in der Endphase auf den CYBER-KAUF Server aufgespielt. In diesem Umfeld das bereits gegeben
war, konnten die Kosten ebenfalls minimiert werden.
- Einleitung / Beschreibung in deutsch und englisch
Ziel war es, eine Internetseite mit E-Shop zu entwickeln, die auf die Datenbestaende einer
Datenbank zurueckgreift. Die einzelnen Seiten sollten dynamisch erzeugt werden.
Um leichtes Navigieren zu gewaehrleisten muß in den Seiten die Moeglichkeit geschaffen werden
jederzeit in andere Haupt- bzw. Untergruppen zu gelangen.
Waren in den virtuellen Warenkorb zu legen, soll auf jeder E-Shopseite moeglich sein.
Vorhandene Bilder oder Datenblaetter sollen jederzeit abrufbar sein, ohne den E-Shop
zu verlassen. Desweiteren sollte der Bestand des Warenkorbs aus dem E-Shop ueberpruefbar und
veraenderbar sein. Da sich im E-Shop mehrere User befinden koennen, ist eine Identifizierung
zwingend notwendig. Daten des virtuellen Warenkorbs sollen nach Beendung der Session geloescht
werden, um zu verhindern dass bei starker Frequentierung des Shop`s die Warenkorb-Tabelle
auf eine unzulaessige Groeße anwaechst. Nach Auswahl der Artikel im Katalog soll der User seine
Bestellung, unter Angabe der Adressdaten, Online ausloesen koennen. Die E-Shop Session soll mit
den Bestelldaten in zwei E-Mails, an den User und den E-Shop Haendler, beendet sein.
Es wird eine Kundendatenbank angelegt bei der sich der User (Kunde) am Shop anmelden kann.
Ueber ein Kundenadministrationsmenu sollte der Kunde seine Daten aendern koennen.
Die Webseite soll fuer mehrere Anbieter mit unterschiedlichem Design erscheinen. Der E-Shop
von einem Haendler (xy.cyber-kauf.de) darf nur die Produkte des Haendlers enthalten. Auf dem
Master E-Shop (www.cyber-kauf.de) werden jedoch alle Produkte aller im E-Shop verzeichneten
Haendler gezeigt.
Zum Schluss sollte noch ein Onlineadministrationsportal fuer Produkte und das Design der Homepage
fuer den Haendler entstehen. Ueber diese Funktion kann der Haendler seine
komplette Internetpraesentation veraendern (Produkte anlegen, aendern und loeschen /
Webseite mit Hauptgruppen und Untergruppen gestalten).
Weiterhin sollte durch nicht allzugrossen Kostenaufwand ein individuelles Marketingsystem
entwickelt werden. Mit der Zielsetzung die Werbung fuer die Firma Cyber-Kauf
an den Kunden und Haendler zu bringen. Der erste Punkt wird in Form eines Stickmusters des Logo´s
der Firma auf unterschiedliche Dinge wie Hemden, Basecaps etc. gestickt. Der zweite Punkt ist
durch den Besuch der "spoga / gafa 2000" in Betracht gezogen worden.
Goal was it to develop an internet-side with e-shop, that fall back on the data inventories of a
data bank. The individual sides should be generated dynamically. In order to guarantee easy
navigating, the possibility must be created in the sides to reach into other head - as well as
subassemblies anytime.
Was to be put into the virtual merchandise-basket, should be possible on each Shopsite.
Existing pictures or data sheets should be accessible anytime, without which e-shop too abandoned.
Furthermore, the continuance of the merchandise-basket should be from the e-shop visible and
alteration. Since several User can be in the e-shop, an identification necessarily participates
necessary. Data of the virtual merchandise-basket should be deleted after end of the session
in order to prevent that the merchandise-basket-table increases with strong use of the shop on
an inadmissible size. The User should be able to cause his/its order, under statement of the
address-data, after drawing selection of the articles in the catalog online. The e-shop session
shall with the order-data in two e-mails, at which User and the e-shop dealer, is finished.
It becomes quarreled the User (customer) with her/it at the Shop a customer-data bank can declare,
is finished. The customer should be able to alter his/its data over a sellermenue.
The web page should appear for several suppliers with different design. The E-Shop of a dealer
(xy.cyber-kauf.de), can contain only the products of the dealer. On the master e-shop
(www.cyber-kauf.de), all products are shown all trader charted in the e-shop however.
To the end, another online-administration-portal should originate for products and the design
of the home page for the dealer. Over this function, the dealer can change his/its complete
internet-presentation, products aim, alter and delete / web page with main-groups and
subassemblies shapes.
Still, an individual marketing-system should be developed by not all too great expenditure.
With the objective, to bring the advertisement for the company Cyber-Kauf at the customer and dealers.
The first point becomes in form a Stichmuster of the logo of the company on different things like
shirts, Basecaps etc done embroidery. The second point has been pulled by the visit of the
" spoga / gafa 2000 " in consideration.
- Projektplan und Meilensteine festlegen
Im Projektplan sind die Hauptpunkte sowie die dazugehoerigen Arbeiten erfasst worden. Der
Projektplan dient zur Kontrolle, sich eine Uebersicht ueber das Projekt zu verschaffen, damit man
feststellen kann was bereits erledigt ist und wie lange man dafuer Zeit hat. Anhand dieses
P-Plans konnte man auch eine Kostenschaetzung vornehmen als ob die Arbeitszeit kostenplichtig
waere. In der unteren Darstellung finden Sie ein Screenshot mit der Meilensteinuebersicht um die
dazugehoerigen Unterpunkte wie zum Beispiel der Besuch der Spoga. Das anschliesende Ordnen
der gesammelten Informationen ist aus platztechnischen Gruenden nicht in dieser
Grafik enthalten. Wichtig bei einem Projektplan ist auch, dass man die Ressoursen richtig
abschaetzen kann, zum Beispiel das interne Netzwerk. Haette dies nicht den Anfoderungen des
Projekts entsprochen, so waere sehr wahrscheinlich kein befriedigendes Endergebnis entstanden.
Die naechste Grafik zeigt einen zeitlichen Ablaufplan von Microsoft Projekt und die
Verknuepfungen der einzelnen Projektaufgaben miteinander. Die Reienfolge ist die selbe wie bei
der oberen Grafik. Dieser Plan musste aus Darstellungsgründen auf ca. fuenf Wochen verkuerzt
werden. Normalerweise sind bestimmte Punkte hintereinander anzuordnen
da jeder Balken die Arbeitszeit fuer eine Person pro Tag bedeutet. Somit wuerden
anhand dieser Grafik mehr als vier Personen benoetigt.
Entscheident fuer das Abbilden diese Projekts, war fuer mich das Einarbeiten in eine Software,
und damit die verbundene Art diese kennenzulernen. Aus eigener Erfahrung kann ich nun
sagen das es kein grosser Aufwand war, das ganze zu pflegen. Eher war es so, das die Ueberwachung
sowie die Zeiteinteilung problemlos ueberschaubar war. Der offizielle Projektbeginn war mit
der spoga im September letzten Jahres. Somit war genuegend Zeit das Grundsystem zu entwickeln.
- Haendlerwahl / Produktvergleich
Beim Besuch der spoga / gafa 2000 Freizeitmoebelmesse fuer Fachaussteller am 03. September 2000
wurde ein Produktauswahl vorgenommen. Ein italienisches Haendler erhielt den Zuschlag, da sein
Produkt einen sehr guten und soliden Eindruck bei uns hinterlies und unseren Vorstellungen am besten
entsprach. Mit dieser Auswahl war der erste Haendler der Webseite Cyber-Kauf gefunden.
- Logodesign / Logofindung / Slogan
Um die Firma Cyber-Kauf zu praesentieren, wurden hierfuer eigens ein Logo entwickelt
mit dem Hintergedanken, dieses so zu gestalten damit es zusätzlich auf Stoff
gestickt werden kann.
Die Wahl fiel nach einigen Designvorschlaegen auf Logo Nr. 5.
Nr. 1
| |
Nr. 2
|
Nr. 3
| |
Nr. 4
|
Nr. 5
| | |
Die Logos wurden mit den Grafikprogrammen Max 3D Studio sowie Adobe Photoshop entworfen
und fuer das Internet exportiert. Da das Internet auch User hat, die zum Beispiel noch mit
geringer Geschwindigkeit zum Internet eine Verbindung ueber ihren Provider aufbauen, muss bei
der Erstellung von Grafiken immer auf die Groesse geachten werden. Damit verbunden ist auch
die Geschwindigkeit mit der eine Webseite geladen werden kann. Somit wurde bei der kompletten
grafischen Entwicklung dieser Punkt in Erwaegung gezogen.
Parallel zu der Entwicklung des Logos musste ein griffiger Slogan
fuer die neue Firma gefunden werden. Dieses war bei weitem
nicht sehr einfach. Doch nach mehreren Vorschlaegen wie:
"aus Freude am kaufen", "Spass beim Shopping", "einfach die Zunkunft erleben",
"eintauchen in die virtuelle Welt des kaufens" meiner Meinung nach die perfekte
Idee entstanden "click auf Cyber-Kauf" und damit musste eigentlich nicht mehr
viel nachgedacht werden, denn der war unserer Meinung nach so gut, das er ein
Ohrwurm ist. Hierzu wurde ebenfalls ein Logo fuer die spaetere Entwicklung
der Visitenkarten entworfen das rechts zu sehen ist.
|
| |
Damit diese Auswahl gefestigt werden konnte, wurde eine Designpause eingelegt um nach ca.
drei Wochen die ganzen Vorschlaege nochmals durchzugehen. Doch dabei bestaetigte sich
die bereits getroffene Auswahl erneut und es gab keine weiteren Einwaende mehr.
- Stickvorlage aus Logo erstellen
Um eine Stickmustervorlage in digitaler Form zu erstellen, wurde das dreidimensionale Logo
in ein zweidimensionales Logo umgewandelt und im Bitmapformat abgespeichert.
Zusaetzlich mussten die Farbverlaeufe aus der Grafik entfernt werden, damit das Logo
problemlos digitalisiert werden kann.
Im rechten Beispiel sieht man das Digitizing Programm mit dem bereits bearbeiteten
Logo. In diesem Programm werden die begrenzungspunkte fuer die
Flaechenfuellung sowie Stickart und Stickwinkel erstellt. Zusaetzlich
koennen hier auch noch Stickmusterdefinitionen vorgenommen werden.
|
| |
| |
|
Um eventuelle Feinkorrekturen vorzunehmen gibt es ein weiteres Programm (Stitch Editor)
mit dem direkt jeder einzelen Stichpunkt korregiert werden kann. Beim Logo
musste einiges korrigiert werden damit ein drei dimensionaler Effekt trotz
zwei dimesionaler Stickung entstanden ist.
|
| |
Damit die digitalen Daten aus den Programmen in die Stickmaschine geladen werden koennen,
muessen sie auf einer Diskette in Maschinencodesprache gewandelt werden.
Um das gestickte Logo mit verschiedenen Flaechenfuellungen beurteilen zu koennen,
wurden drei verschiedene Muster gestickt. Anhand dieser Vorlagen fiel die Wahl auf das Logo Nr. 2.
Fuer diese Logo wurden 2719 Stiche mit der Farbe rot benoetigt und eine Fadenlaenge von
7,16m, 1352 Stiche mit der Farbe gelb und eine Fadenlaenge von 4,32m. Die Gesamtelaenge des
Fadens betrug somit 11,48m mit 4071 Stichen. An dieser Stelle moechte ich mich recht herzlich
fuer die Unterstuetzung dieser Taetigkeit bei der Familie Wahr bedanken.
- Visitenkarten erstellen
Die benoetigten Visitenkarten wurden mit Microsoft Word erstellt. Das Logo wurde lediglich
importiert und an den dafuer vorgesehene Platz positioniert. Das Ergebnis kann unten
betrachtet werden. Das Design sollte ganz schlicht sein um einem Visitenkarten Standart zu entsprechen,
daher wurde rechts die Adresse mit allen wichtigen Daten angeordnet und links das Logo sowie
die Position der Person und der Personenname.
- Seitenlayout festlegen
Die Gestaltung der Internetseite ist parallel zum Entwurf des Logos verlaufen. Hierbei wurde das
Design sowie die Farben des Unternehmens festgelegt. Da das Unternehmen ein Familienbetrieb ist,
hat man sich zusammengesetzt und ueber die verschiedenen Vorschlaege debatiert :-). Die
Farben rot und gelb wurden einheitlich ausgewaehlt, und es gab auch diesbezueglich keine
Einwaende. Wichtig dabei war, das die verschiedenen Logos, die Entworfen worden sind auch bei
diesen Vorschlaegen mit eingebaut wurden. Anhand dieser Vorlagen wurde dann eine Entscheidung
gefaellt. Vorschlag Nr. 7.
Nr. 1
| |
Nr. 2
|
Nr. 3
| |
Nr. 4
|
Nr. 5
| |
Nr. 6
|
Nr. 7
| |
|
Zur weiteren Gestaltung wurde festgelegt das nur dynamische Hyper-Links in Frage kommen
um eine leichte Navigierbarkeit in der Seite zu gewaehrleisten. Dies wurde erreicht, indem im ersten
ASP-Script das Seitenlayout dynamisch zusammengestellt ist. Dadurch ist es moeglich, beim
erstmaligen Aufruf der Webseite eine Hompage darzustellen sowie die dazugehoerigen
Haupt- und Untergruppen. Beim Navigieren ueber die Hyper-Link-Leiste wird automatisch
der gerade angezeigte Link mit Fettdruck dargestellt und ist auch nicht mehr als Link
anklickbar. Zusaetzlich wird eine kleine Grafik mit in den Button eingebunden damit erkennbar ist,
das es sich zum Beispiel um eine Hauptgruppe oder Untergruppe handelt. Das gleiche gilt fuer den
Shop. Der Kunde erhaelt sofort eine vom Shop Master waehlbare Katalogseitenkombination angezeigt,
zum Beispiel besondere Artikel, Aktionen, Sonderangebote, etc.
Die Bildinformationen werden in der Datenbank mitabgelegt damit eine weitere Dynamik
gewaehrleistet ist. Anhand diese Festlegungen wurde die Entwicklungsarbeit dementsprechend
angepasst.
- Serverbau
Die Auswahl des Servers wurde anhand der benoetigten Anforderungen kompletiert. Da ein
Teil des Shops bereits auf meinem Server im internen Netzwerk problemlos laeuft, habe ich mich
fuer eine 1 Prozessor Maschine entschieden mit 256 MB Arbeitsspeicher. Das Gehaeuse wurde
ebenfalls an die Anforderungen des Rechenzentrums Ametras angepasst, siehe Bild.
Die Wahl des Gehaeuses fiel auf ein 19" Servergehaeuse von Macroton das genuegen
Platz hat um den Server spaeter problemlos ausbauen zu koennen. Diese Gehaeuse ist
aus stabilem Alu und mit abschliessbaren Fronttueren versehen. Desweiteren enthaelt es ein
Redundantes Netzteil zur sicheren Stromversorgung.
In den Server wurde das Board der Firma Asus CUSL2-C eingebaut mit einem 733 MHz Celeron Prozessor
der Firma AMD. Zusaetzlich wurde das Gehaeuse mit einer Disketteneinheit sowie ein CD-Rom
bestueckt. Damit die Platten auch ohne oeffnen des Gehaeuses getauscht werden koennen
wurden diese in einen Wechselrahmen eingebaut. Als Boot und Systemplatte wurde eine 20GB IDE Platte
ausgewaehlt. Zur Sicherung der Platte habe ich eine zweite Platte eingebaut (30GB), damit
woechentlich die Daten auf die Sicherungsplatte kopiert werden koennen. Die nachfolgenden
Bilder zeigen die Arbeitsablaeufe.
Zum Schluss habe ich die kompletten Kabel mit Kabelbinder gebuendelt um die Luftzirkulation
im Gehaeuse nicht zu behindern.
2001.11.17 Der Server wurde nachträglich mit 512MB Arbeitsspeicher ausgestattet
zusätzlich ist der Sicherungsjob in Shell (Bash) als Programm erstellt worden.
- Installation der Software auf dem Server
Auf den Server wurde nun das Betriebssytem Linux installiert . Das nachfolgende Bild zeigt
eine Installationsmaske.
|
Zusammen mit diesem Betriebssystem wurden noch folgende Programme mitinstalliert, ein Mailserver,
der Apache Webserver, ein FTP-Server und der MySQL - Serverdienst. Diese Software muß nach
der Grundinstallation noch fuer das System angepasst werden, welches in den nachfolgenden Schritten
noch detailierter erklaert wird.
- Mailserver
Der Mailserver wurde als Standartinstallation von der SuSE CD installiert. Fuer jeden
Mailaccount muessen Benutzer auf dem Server angelegt werden (fkdxx => Firmenkunde, pkdxx =>
Privatkunde und mkdxx => Mailaccount). In Verzeichnis /etc/mail/ wurden die Dateien aliases,
mailertable, access, virtusertable und genericstable bearbeitet.
- aliases
In diese Datei werden reale Namen den auf dem System zugeordneten Benutzer angelegt.
Wie zum Beispiel marc.hanschur:fkdxx das heist eine Mail an marc.hanschur@xx wird auf den
Mailaccount fkdxx gemappt.
- mailertable
In dieser Datei werden bestimmte Regeln definiert. Wenn zum Beispiel eine Mail an t-online.de
geschickt wird geht diese nicht an Mailserver t-online.de direkt sonder ueber zum
Beispiel pop.puretec.de. Der Eintrag hierfuer sieht folgendermasen aus t-online.de
smtp:pop.purtec.de.
- access
Hier wird definiert, wer Zugriff auf Sendmail hat. Normalerweise haben nur locale Adressen
Zugriff doch hier kann bestimmt werden das der Server auch E-Mails von t-online.de
entgegennimmt (t-online.de RELAY).
- virtusertable
Um das System noch perfekter auszubauen gibt es die Moeglichkeit, wenn es zum Beispiel
zwei gleiche Namen an zwei unterschiedlichen Domains gibt und diese dann noch an unterschiedliche
Benutzer geschickt werden sollen ist das ganze folgendermassen einzutragen
(webmaster@xy.de fkdxx / webmaster@yx.de pkdxx).
- genericstable
Hier wird definiert welcher Benutzer welche ausgehende Adresse erhaelt (fkdxx xy@cyber-kauf.de).
- Apache Webserver
Dieser wurde ebenfalls in der Standartinstallation verwendet, nur mit dem Zusatz der
Verschluesselung. Hierfuer wurde ein Serverzertifikat angelegt damit der Virtuelle-SSL-Host
auch problemlos funktioniert. Zusaetzlich wurden noch normale Virtuelle Hosts installiert
um mehrere Webseiten auf dem Server ablegen zu koennen. Zusaetzlich wurden in bestimmten
Verzeichnissen .htaccess Dateine abgelegt mit einer Datenbankauthentifizieruzng damit
bestimmte User nur in bestimmte Verzeichnisse gelangen.
- FTP - Server
Der FTP Server benoetigt wie der SendmailServer Benutzer zur Authentifizierung.
Ich habe mich fuer proFTP entschieden da hier eine bessere Rechtebeschraenkung
des Benutzers moeglich ist.
- MySQL Dantenbankserverdienst
Er wurde ebenfals in der Standartinstallation angelegt (SuSE CD) und es wurden die Benutzer
fuer die Datenbank "cyber_kauf" angelegt, sowie eine eigene Verwaltungsdatenbank
"verwaltung" mit allen Benutzern des Systems. Hiermit kann zu einem spaeteren Zeitpunk
auch die Benutzerverwaltung des Systems online gefuehrt werden.
Als Dienstprogramme zur einfachen Administration des Server habe ich mich fuer Webmin
(http://www.webmin.com) entschieden. Mit diesem Programm hat man die Moeglichkeit das
gesamte System ueber das Internet zu administrieren. Fuer die einfach Administration des
SQL - Servers habe ich zusaetzlich noch MySQL Man installiert.
- Geschaeftsvorfall abbilden
Zunaechst stellt sich die Frage, was passiert eigentlich wenn ein Kunde ueber das Internet bestellt.
Aus Sicht des Kunden wird eine Webseite aufgerufen und Produkte ausgewaehlt. Die Auslieferung der
bestellten Produkte sollte schnellstmoelichst erfolgen.
Doch ganz so einfach ist das nicht. Wenn der Kunde zur einer dynamische Webseite kommt gibt
es verschidene Ablaeufe. Er klickt zum Beispiel auf Shop dann wird eine Webseite ueber
eine Aktion des Servers zusammengestellt. Dieses funktioniert ueber den CGI-Mechanismus.
Der Kunde muss somit keine besonderen PlugIns fuer seinen Browser haben um die Seite darzustellen
zu koennen, denn der Server liefert im ein fertiges Produkt.
Der Kunde traegt eine bestimmte Menge (Anzahl) in ein Formularfeld ein und klickt auf den
Button "in den Warnkorb legen". Jetzt wird ein Script auf dem Server aufgerufen der diesen Artikel
mit der bestellten Anzahl in den Warenkorb (Datenbank) eintraegt. Anschliessend liefert der
Server dem Client wieder eine Webseite zurueck (der Ausgangspunkt). Die Aktion die der Server
im Hintergrund getaetigt hat ist allerdings fuer den Kunden nicht sichtbar. Wenn der
Kunde auf bestellen klickt bekommt er vom Server ein Formular angezeigt in die er seine
Adressdaten, die fuer die Auslieferung der bestellten Artikel benoetigt werden, eingeben muss. Damit
aber nicht genug, denn beim klicken auf "weiter im Bestellvorgang" ueberprueft nun der CGI-Mechanismus
ob die eingegebenen Daten auch richtig sind. Wenn diese Pruefungen alle mit OK abgeschlossen wurden,
wird eine Textseite vom Server generiert in der der Kunde nochmals die Moeglichkeit hat seine Daten zu
ueberpruefen. Nun kann er auf "verbindlich bestellen" klicken und die Daten werden direkt an den Server
gegeben. Dieser verfasst nun eine E-Mail mit den bestellten Artikeln und versendet diese an den Kunden
sowie an den Haendler. Der Kunde erhaelt nur eine Textausgabe in seinem Browserfenster
"Der Bestellvorgang war erfolgreich". Anhand der E-Mail mit dem Ihnhalt der Kundendaten wird der
Haendler nun die bestellte Ware ueber einen Lieferanten an den Kunden ausliefern und somit ist der
Bestellvorgang abgeschlossen.
Dieser Vorgang wird durch die unten gezeigte Grafik veranschaulicht.
- Datenbankdesign anhand der Anforderungen festlegen
Bei der Entwicklung einer Datenbank (DB) ist es zwingend notwendig sich im Vorfeld mit den
Anforderungen und dem Umgebungsfeld der DB auseinanderzusetzen.
In diesem Fall war das:
- Leichte Portierbarkeit auf einen anderen Artikelstamm
- Erweiterbarkeit im Produktstamm
- Erweiterung durch zusaetzliche Tabellen
- Festlegung der Datenbankart
Auch in Zeiten in denen Speicherplatz sehr guenstig geworden ist, sollte bei der Felddefinition
in den einzelnen Tabellen moeglichst mit Speicherplatz sparsam umgegangen werden.
Mit einer gut strukturierten DB ist die spaeter anfallende Programmierarbeit ueberschaubarer,
weniger fehleranfaellig und geht wesentlich leichter von der Hand.
Daher wurde das nachfolgende Modell erstellt.
Die zentrale Tabelle fuer die Webseite ist die Tabelle "custom". Mit ihr wird die Webseite
nach Domainname zusammengestellt. Somit ist die Moeglichkeit geschaffen unter einer Domain
mehrer Subdomains zu Verfuegung zu stellen und die damit verbundene Webseite. In Zusammenspiel
dieser Tabelle werden alle weiteren Tabellen benoetigt wie die obere Grafik zeigt. Die
Webseiteninhalte werden mit in die Tabelle "navugr" abgelegt. Der Haendler hat die Moeglichkeit
mehrer Hauptrubriken sowie Unterrubriken anzulegen. Das Seitendesign kann ebenfall durch diese
Moeglichkeit hergestellt werden. Ueber ein Administrationsmenue kann der Haendler seine
Webseite nach belieben gestalten nur das Seiten-Layout ist Vorgabe.
Die Tabelle fuer den E-Shop ist die Tabelle "orderart". In ihr werden unter der jeweiligen
WWW-ID-Nummer Stueckzahl und Artikel ID-Nummer abgelegt. Über die WWW-ID-Nummer ist
gewaehrleistet dass auf alle Artikel die der User in den Warenkorb gelegt hat, zugegriffen
werden kann. Die Eintragung der Daten in die Datenbank kann von unterschiedlichen Stellen
kommen, die Unterschiede bei der Eintragung erfordern.
Die Tabelle "sitetxt" ist fuer Standarttexte auf der Webseite und des E-Shop´s somit
koennen diese dann im Administrationsmenu fuer den Shopbetreiber veraendert werden.
Die Tabelle "grf" ist eine Grafikdatenbank in der nur Grafikdateien abgelegt werden die fuer
Webseiten und sonstige Inhalte dienen.
Erklaerung der einzelnen Datenfelder der unteren Zeichnung
Tabellenname + Felder + Erklaerung
|
custom
custom_id
|
Eindeutige ID anhand der die Reihenfolge der Eintragung in die custom Datenbank
nachvollziebar wird.
|
custom_ok
|
Freischaltungseintrag womit der Shopbetreiber (Shop Master) den eingetragenen
Haendler freischalten kann.
|
custom_custid
|
Eindeutige Zuordnug (Sub - Domain Name)
|
custom_name
|
Firmenname des Haendlers
|
custom_str
|
Strassenangabe des Haendlers
|
|
design
design_id
|
Eindeutige ID wird beim loeschen eines Haendlers benoetigt oder beim
Loeschen der hinterlegten Bildinformationen.
|
design_custid
|
Zuordnung anhand des Sub -Domain Namens
|
design_logomime
|
Mimetype Eintrag fuer Logo links oben.
|
design_logobild
|
Bildinformationsdaten fuer Logo.
|
design_navobmime
|
Mimetype Eintrag fuer obere Navigationsleiste.
|
|
site
site_id
|
Eindeutige Id wird ebenfalls beim Loeschen der Site gebraucht
|
site_custid
|
Eindeutige Zuordung mit dem Sub - Domain Name
|
site_ticker
|
Eintrag (0 oder 1) ob Ticker erwuenscht oder nicht
|
site_tickerbcw
|
Hintergrundfarbe fuer den Ticker
|
site_tickerfcw
|
Schriftfarbe fuer den Ticker
|
|
apartner
apartner_id
|
Eindeutige Id mit der der Ansprechpartner sich am System anmelden kann
|
apartner_custid
|
Zuordnung zur Subdomain (Rechte was darf dieser Ansprechpartner veraendern)
|
apartner_pass
|
Passwort des Ansprechpartners
|
apartner_passok
|
Das Passwort wird bei der Erstanmeldung automatisch vergeben sowie bei Anlage
eines zusaetzlichen Ansprechpartners. Ueber diese Feld kann bei
der Erstanmeldung eine Passwortaenderungspflicht inkraft treten
|
apartner_group
|
Zugehoerigkeit des Ansprechpartners (Administrationsrechte ja nein)
|
|
snavhgr
snavhgr_id
|
Eindeutige ID fuer die Shop Hauptgruppe
|
snavhgr_custid
|
Zuordnung zu welchem Sub -Domainname diese Gruppe gehoert
|
snavhgr_name
|
Name der Hauptgruppe
|
snavhgr_rfolg
|
Die ausgewaehlte Reihenfolge kann hier eingegeben werden
|
snavhgr_desc
|
Eine Kurzbescheibung was sich hinter der Hauptgruppe verbirgt
|
|
snavugr
snvugr_id
|
Eindeutige Shop Unterguppen ID
|
snavugr_custid
|
Zuordnung zur Sub - Domain
|
snavugr_name
|
Name der Untergruppe
|
snavugr_desc
|
Kurzbeschreibung der Untergruppe
|
snavugr_hgr_id
|
Zuordnung bei welcher Hauptgruppe diese Untergruppe angezeigt wird.
|
|
seller
seller_id
|
Kundennummer
|
seller_pass
|
Passwort des Kunden
|
seller_group
|
Gruppenzugehoerigkeit (wird im Momnet noch nicht genutzt).
|
seller_anred
|
Anrede des Kunden
|
seller_vname
|
Vorname des Kunden
|
|
art
art_id
|
Eindeutige Artikel ID in der Datenbank
|
art_custid
|
Zuordnung zum Sub - Domain Namen
|
art_name
|
Artikel Name
|
art_nr
|
Artikelnummer des Haendlers
|
art_sugr_id
|
Zuordung bei welcher Shop Untergruppe diese Artikel erscheinen soll
|
|
artgrf
artgrf_artnr
|
Eindeutige ID anhand der Artikel Nummer
|
artgrf_mime
|
Mimetype fuer Artikelbild
|
artgrf_bild
|
Bildinformationen fpr Artikelbild
|
|
meas
meas_id
|
Eindeutige Messtabellen ID
|
meas_name
|
Name der Messeinheit (kg, ...)
|
|
navhgr
navhgr_id
|
Eindeutige Hauptgruppen ID
|
navhgr_custid
|
Zuordnung zur Sub - Domain
|
navhgr_name
|
Name der Hauptgruppe fuer die Webseite
|
navhgr_rfolg
|
Reihenfolge in der die Hauptgruppen dargestellt werden sollen
|
navhgr_desc
|
Kurzbeschreibung der Hauptgruppe
|
|
navugr
navugr_id
|
Eindeutige ID der Untergruppe fuer die Webseite
|
navugr_custid
|
Zuordnung zur Sub -Domain
|
navugr_sdesc
|
Kurzbescheibung der Untergruppe
|
navugr_name
|
Untergruppen Name
|
navugr_desc
|
Lanbescheibung der Untergruppe
|
|
cc
cc_id
|
Eindeutige ID fuer den Laendercode
|
cc_code
|
Laendercode (DE, CH etc.)
|
cc_name
|
Laendernamen
|
|
sitetext
sitetxt_id
|
Eindeutige ID von der ein Script auf den Text zugreifen kann
|
sitetxt_besch
|
Beschreibung des Textes
|
|
grf
grf_id
|
Eindeutige ID fuer Anzeige der Grafik
|
grf_mime
|
Mimetype der Grafik
|
grf_bild
|
Bildinformationen
|
|
Wichtig fuer den E-Shop ist das der Kunde zusaetzliche Artikel in den Warenkorb legen
kann oder bereits Waren, die sich im Warenkob befinden, veraendert werden koennen.
- Zusaetzliche Waren in den Warenkorb legen bedeutet, dass die Anzahl fuer bereits im
Warenkorb liegender Artikel erhoeht werden soll - es muß also addiert werden.
- Waren im Warenkorb veraendern bedeutet unter Umstaenden komplettes Veraendern (loeschen) der
Anzahl, der im Warenkorb befindlichen Artikel. Artikel die sich im Moment in der Datenbank
befinden duerfen nicht zum Vergleich herangezogen werden.
Die Loesung dieses Problems erfolgt, nachdem alle Daten ausgelesen und zwischengespeichert
sind, durch die komplette Loeschung der Tabelle. Sollen Daten addiert werden kann jetzt ein
Abgleich zwischen uebergebenen Werten und Werten aus der Datenbank stattfinden. Aufgrund eines
uebergebenen Parameters kann entschieden werden, welche Daten in die leere Tabelle geschrieben
werden sollen. Wichtig bei diesem Vorgang ist die Sperrung der Tabelle, damit in dieser Zeit
nicht mehrmals gleichzeitig auf die Tabelle zugeriffen werden kann. Die Angabe der "custid"
(Eindeutige Bezeichnung fuer den Haendler) macht es bei einer Bestellung problemlos
moeglich die jeweiligen Haendler ueber die bestellten Produkte zu informieren
(per E-Mail-Auftrag).
- Entwicklung des Shops auf Basis von ASP
Das schreiben der Scripte erfolgt unter Homeside 4.0, wobei jeder ASCII Editor genauso
geeignet ist. Vorteil von Homeside 4.0 ist die sehr gute Unterstuetzung bei HTML / ASP. Bei
Homeside 4.0 koennen auch Dateien im Unix Format abgespeichert werden, was die Moeglichkeit
eroeffnet, mittels des Fileservers Samba, Dateien direkt auf dem Server im
entsprechenden Verzeichnis abzulegen. Dies erspart den Transfer der Dateien mit dem
FTP-Protokoll. Um Fehler zu lokalisieren sind neben einem Browser (Netscape/MS- Explorer)
immer zwei Fenster mit einer SSH-Session geoeffnet. In diesen koennen die Fehlerlogdateien
des WWW-Servers und des Datenbank-Servers (tail -f <dateiname> zeigt immer die letzten
Zeilen der Datei an und aktualisiert bei Neueintraegen) beobachtet werden. Hieraus
koennen Rueckschluesse auf Fehler im Script gezogen werden wobei bei ASP Fehler nur
spaerlich angezeigt werden meistens nur Zeilennummer.
Die Zentrale Schnittstelle zwischen WWW-Client und der Datenbank ist das
Common Gateway Interface (CGI). Ueber CGI ist es moeglich dem Client dynamisch generierte
HTML-Seiten zur Verfuegung zu stellen. Aus der Sicht des Client aendert sich nichts
zwischen dem Zugriff auf ein HTML-Dokument oder ein durch CGI erstelltes
HTML-Dokument. Er fordert eine Seite vom HTTP-Server an und bekommt diese uebermittelt.
Anders sieht es beim HTTP-Server aus. Denn die Seite die er uebermitteln soll
liegt so bei ihm nicht vor. Wenn der Client eine Anforderung an den Server schickt
steht hinter der angeforderten URL keine festgeschriebene HTML-Seite
sondern ein ausfuehrbares Programm. Diese Programm generiert je nach uebergebener
Information des Client eine HTML-Seite mit den Daten der Datenbank.
Welche Daten aus der Datenbank der Server zur Seitengenerierung benuetzen soll wird ihm in
Form eines Formulars uebergeben. Bei der neugenerierten HTML-Seite kann es sich durchaus
wieder um ein Formular handeln, das wiederum vom Server eine dynamische HTML-Seite anfordert.
Wie man sieht, koennen mit diesem Mechanismus individuell zusammengestellt
HTML-Seiten erzeugt werden. Dieser Zugriff wird bereits im Geschaeftsvorfall erklaert
und ist in der nachfolgenden Grafik nochmals dargestellt.
Hier nur als Beispiel, das ASP-Script, dass die Hompage erzeugt diese Datei ist der Grundstock des
gesamten Systems.
Es gibt eine Hauptdatei "index.asp" fuer das gesamte System was die nachfolgende Grafik
zeigt. Die "/seller/index.asp" Datei ist nur zur Aenderung der Kundendaten vorhanden
und benuetzt wie man erkennen kann einige Include Dateien die fuer die Hauptdatei ebenfalls
genutzt werden. Die Einbindung der Include Datein im gesamten System funktioniert anhand
verschiedener Uebergabevariable was die untere Grafik ebenfalls zeigt, dadurch ist wie bereits
oben erklaert die Dynamik der Webseite entstanden.
Die naechste Grafik veranschaulicht die Zusammenstellung des Bestellsystems und das Einbindung der
dazugehoerigen Include Dateien.
Nun fehlt nur noch das Kundenanmeldesystem was in der nachfolgenden Grafik gezeigt wird. In diesen
Dateien werden wie beim Bestellsystem alle eingegebenen Daten geprueft und bei Bedarf eine
Fehlermeldung erzeugt. Diese Fehlermeldung sowie alle Standarttexte werden aus der "sitetxt" Tabelle
der "cyber_kauf" Datenbank entnommen.
In der weitern Ausbaustufe wird das Administrationsscript fuer den Haendler entwickelt.
Im Moment kann sich der Haendler am System anmelden und eine Domain registrieren. Die
Administration der Seite wird im Moment noch ueber den MySQLMan geregelt. In naher
Zukunft wird dieser durch ein Haendleradministrationsmenue ersetzt. Ueber diese
Menue kann der Haendler dann seine Webseite komplett verwalten sowie Webadministratoren
(Ansprechpartner) anlegen. Zusaetzlich wird eine Artikelverwaltung mit dem dazugehoerigen
Warenwirtschaftssystem entstehen.
Die Quelldateien sind ausfuehrlich kommentiert und liegen bei der Dokumentation in Schriftform
bei (CD). Ein SQL - Dump (Datenbanksicherung) liegt ebenfalls bei. Somit wurden in dieser
Dokumentation auf eine detailierte Quelltextdokumentation verzichtet. Internetuser koennen auf E-Mailanfrage
die Quellcodedateien zugesand bekommen.
- Inbetriebnahme
Die Inbetriebnahme konnte noch nicht erfolgen da meine Technikerarbeit
noch nicht abgeschlossen ist. Der Server kann daher noch nicht beim Provider eingebaut werden da
er noch zu Praesentationszwecken benoetigt wird. Zusaetzlich ist eine Weiterentwicklung
erforderlich (Administartionsmenu der Kunden), dieses wird im Anschluss an die Technikerarbeit
entstehen.
2002.01.08 Der Server wurde im Rechenzentrum in Betrieb genommen
- Begriffsdefinitionen zum Thema
Apache Webserver |
Der Apache Webserver ist der am meisten genützte Web-Server im Inte et. Nicht nur dass er als Freeware verfügbar ist und somit kostenlos sonde auch wegen seiner hohen Performance bei vergleichsweise geringer Ressourcenauslastung. Weiterhin bieter er viele flexible einsetzbare Funktionsmöglichkeiten.
|
ASP |
Bekannt unter Application Service Providing oder Active Server Pages. Active Server Pages (ASP) ermöglichen mit Portierung von Perl (mod_perl) in den Apache Webserver eine Dynamischen Inte etauftritt zu erzeugen mit diversen Zusatzfunktionen.
|
Betriebssystem |
Das Betriebssystem ist die Software, die überhaupt erst das Arbeiten mit dem Computer ermöglicht. Das Betriebssystem definiert und verwaltet alle Geräte, Laufwerke, Partitionen, Befehls- und Verzeichnisstrukturen und Programme. Es steuert die Betriebsmittelvergabe (Ressourcenverwaltung), die Prozessverwaltung, die inte en Geräte und die Peripheriegeräte und ist für die Kommunikation (Ein-/Ausgabesteuerung) mit diesen verantwortlich, und es stellt ein Dateisystem und eine (grafische) Benutzeroberfläche zur Verfügung. Gleichzeitig sollte es über ein Sicherheitssystem und eine Auftrags- und Sitzungsverwaltung einschließlich deren Protokollierung verfügen. Je nach Leistungsmerkmalen unterscheidet man zwischen Single-, Multiuser- und Multitask-Betriebssystem.
|
CSS |
Cascading Style-Sheets (CSS) sind eine unmittelbare Ergänzung zu HTML. Es handelt sich dabei um eine Sprache zur Definition von Formateigenschaften einzelner HTML-Befehle. Mit Hilfe
von Style-Sheets können Sie beispielsweise bestimmen, daß Überschriften 1. Ordnung eine Schriftgröße von 18 Punkt haben, in der Schriftart Helvetica, aber nicht fett
erscheinen, und mit einem Abstand von 1,75 Zentimeter zum darauffolgenden Absatz versehen werden. Angaben dieser Art sind mit herkömmlichem HTML nicht möglich.
|
CGI |
Das Common Gateway Interface (Allgemeine Vermittlungsrechner-Schnittstelle) ist eine Möglichkeit, Programme im WWW bereitzustellen, die von HTML-Dateien aus
aufgerufen werden können, und die selbst HTML-Code erzeugen und an einen WWW-Browser senden können. Wenn Sie im WWW eine Suchdatenbank benutzen, Pizza oder Büstenhalter bestellen, sich in ein Gästebuch eintragen, oder einen Zähler mit Zugriffszahlen sehen, dann
steckt CGI oder eine CGI vergleichbare Schnittstelle dahinter.
|
C |
C ist eine Programmiersprache, die 1972 von Dennis Ritchie an den Bell Laboratories entwickelt wurde. Der Name geht auf den unmittelbaren Vorgänger, die Sprache B, zurück. Obwohl viele Programmierer in der Sprache C eher eine maschinenunabhängige Assemblersprache als eine Hochsprache sehen, kann die Sprache aufgrund ihrer engen Anlehnung an das Betriebssystem UNIX, ihrer hohen Beliebtheit und ihrer Standardisierung durch das ANSI-Institut durchaus als Standardprogrammiersprache im Mikrocomputer- und Workstation-Bereich angesehen werden. C ist eine Compiler-Sprache mit einem kleinen Satz eingebauter, maschinenabhängiger Funktionen. Die übrigen C-Funktionen sind maschinenunabhängig und befinden sich in Bibliotheken, die der Programmierer aus C-Programmen heraus nutzen kann. C-Programme bestehen aus einer oder mehreren Funktionen, die der Programmierer definiert. Folglich handelt es sich bei C um eine strukturierte Programmiersprache.
|
C++ |
C++ ist eine objektorientierte Variante der Programmiersprache C. Sie wurde in den frühen 80er Jahren von Bja e Stroustrup an den Bell Laboratories entwickelt und von einer Reihe von Herstelle implementiert, so auch von Apple Computer und Sun Microsystems.
|
CRM |
CRM als Antwort auf ausgeprägte Nachfragemärkte
Fast alle Märkte sind heute ausgeprägte Nachfragemärkte. Intensiver Wettbewerb, Globalisierung und gestiegene Preistransparenz sind die Gründe. Neue Medien und Technologien verleihen den Märkten e-speed und große Dynamik. Die Produkt-Lebenszyklen werden immer kürzer. Die Kunden reagieren mit Serviceanspruch und höherer Wechselbereitschaft. So kommt der Kundenorientierung des Unte ehmensmanagements in allen Führungsdisziplinen eine entscheidende Rolle zu. Das Stichwort dazu lautet "Customer Relationship Management" (CRM). CRM ist eine Ke disziplin des e-managements. CRM beinhaltet nicht nur, passgenaue Applikationen für den Kundenservice bereitzustellen. Mode es CRM heißt vor allem, Kundenorientierung in den relevanten Management-Prozessen zu veranke .
|
CGI - Mechanismus |
Die meisten Server erwarten CGI-Programme und -Skripten in speziellen Verzeichnis, üblicherweise cgi-bin, und oder eine bestimmte Dateierweiterung. Öffnet ein Benutzer einen mit einem CGI - Programm verbundenn URL, fordert der Client vom Server die Datei an. Die Anforderung (Request) eines CGI-Programms sieht grösstenteils so aus wie bei allen anderen Web-Dokumenten auch. Der Unterschied besteht darin, daß der Server, wenn er erkannt hat, daß es sich bei der Adresse um ein CGI-Programm handelt, den Inhalte der Datei nicht dirket zurückliefert. Stett dessen versucht der Server, das Programm auszuführen. Auf welche Weise CGI-Programme ihre Eingaben enthalten, hängt vo Server und vom Betriebssystem ab. Wenn ein CGI-Programm läuft, kann es entweder ein neues Dokument erzeugen und ausgeben oder den URL auf ein bestehendes Dokument zurückliefe .
|
Datenbank |
Eine Datenbank ist ein elektronisches Archiv für die strukturierte, speicherplatzsparende Aufbewahrung großer Mengen inhaltlich zusammengehöriger Daten, aus dem viele Anwender oder Programme gleichzeitig und innerhalb kurzer Zugriffszeiten Daten abrufen können. Gegenüber der Ablage der Daten in voneinander unabhängige Dateien auf verschiedenen Rechne bietet die Datenbank den Vorteil, daß die Datensätze zentral gepflegt und aktualisiert werden können.
|
ERP |
Enterprice Ressource Prozessing / Warenwirtschaftssystem.
Mode e Management-Informationssysteme schlagen die Brücke vom ERP-System zum unterlagerten Automatisierungssystem. What is an ERP?
In simple words an ERP is the integrated software encompassing all the functional departments of the enterprise. Enterprise Resource Planning or ERP is nothing other than software but difference is in the scope of the application area. Commonly we would find modules like Finance, Accounts, Purchase, Sales, Marketing, Planning, Execution, Human Resource, and Contracting in an ERP; all these modules are integrated and share common data. For Example in a non-integrated system the training cell will have list of all the employees, a similar list will be present with Payroll. Now if an employee has left the job the payroll cell updates their data but the training cell keeps on scheduling the employee for subsequent training programs. In an ERP we would find a single employee record and each cell has access to the latest information at any time. Functional ERP will show exact picture of the cash flow. It will also help the management in taking policy decisions fast and implement with immediate effect. All the required valuable and correct information will be available on a key press thus eliminating the dependency on subordinates for data. The latest graphical tools will show the summary data in form of colorful graphs, which will enhance grasping.
|
FTP - Server |
FTP - Server sind im Inte et-Knoten, die über eine eigene Inte et-Adresse verfügen. Im Inte et gibt es dedizierte FTP-File-Server, der Hauptfunktion es ist, als Dateiarchiv für FTP-Zugriffe von Clients zur Verfühgung zu stehen. FTP-Client hingegen kann jedes System mit interaktivem Zugang zum Inte et sein. Der FTP-Server wird Dazu verwendet, um zwischen zwei Inte etrechne beliebieg Dateien zu übertragen. FTP stammt aus der UNIX - Welt und basiert auf dem TCP/IP - Übertragungsprotokoll. Im Inte et verteilt gibt es eine grosse Anzahl von FTP - Serve , die umfangreiche Datenarchive zu den unterschiedlichsten Themenbereichen zur verfügung stellen.
|
Grafikprogramme |
Grafikprogramme enthalten Werkzeuge, um bestehende Bilder zu bearbeiten, retuschieren oder neue Grafiken zu erstellen. Sie erfuellen die anspruchsvollen wuensche der Grafikprofis, bleiben dabei jedoch so benutzerfreundlich, daß selbst Anfänger sich schnell in so einem Programm zurechtfinden. Unabhängig davon, ob täglich oder nur gelegentlich mit Bilddateien gearbeitet wird, oder Grafiken für Web-Seiten erstellt werden.
Wichtig: Bei der Auswahl des Grafikprogrammes ist darauf zu achten, dass es Dateien in einem inte etkompatiblen Format abspeiche kann (jpg, gif,png).
|
HTML |
HTML bedeutet HyperText Markup Language. Es handelt sich dabei um eine Sprache, die mit Hilfe von SGML (Standard Generalized Markup
Language) definiert wird. SGML ist als ISO-Norm 8879 festgeschrieben. HTML ist eine sogenannte Auszeichnungssprache (Markup Language). Sie hat die Aufgabe, die logischen Bestandteile eines Dokuments zu beschreiben. Als Auszeichnungssprache enthält HTML daher Befehle zum Markieren typischer Elemente eines Dokuments, wie Überschriften, Textabsätze, Listen, Tabellen oder Grafikreferenzen. Das Beschreibungsschema von HTML geht von einer hierarchischen Gliederung aus. HTML beschreibt Dokumente. Dokumente haben globale Eigenschaften wie einen Titel oder eine Hintergrundfarbe. Der eigentliche Inhalt besteht aus Elementen, zum Beispiel einer Überschrift 1. Ordnung. Einige dieser Elemente haben wiederum Unterelemente. So enthält ein Textabsatz zum Beispiel eine als fett markierte Textstelle, eine Aufzählungsliste besteht aus einzelnen Listenpunkten, und eine Tabelle gliedert sich in einzelne Tabellenzellen. Die meisten dieser Elemente haben einen fest definierbaren Erstreckungsraum. So geht eine Überschrift vom ersten bis zum letzten Zeichen, eine Aufzählungsliste vom ersten bis zum letzten Listenpunkt, oder eine Tabelle von der ersten bis zur letzten Zelle. Auszeichnungen markieren Anfang und Ende von Elementen. WWW-Browser, die HTML-Dateien am Bildschirm anzeigen, lösen die Auszeichnungsbefehle auf und stellen die Elemente dann in optisch gut erkennbarer Form am Bildschirm dar. Dabei ist die Bildschirmdarstellung aber nicht die einzige denkbare Ausgabeform. HTML kann beispielsweise genauso gut mit Hilfe synthetisch erzeugter Stimmen auf Audio-Systemen ausgegeben werden. Eine der wichtigsten Eigenschaften von HTML ist die Möglichkeit, Verweise zu definieren. Verweise ("Hyperlinks") können zu anderen Stellen im eigenen Projekt führen, aber auch zu beliebigen anderen Adressen im World Wide Web und sogar zu Inte et-Adressen, die nicht Teil des WWW sind. Durch diese einfache Grundeigenschaft eröffnet HTML völlig neue Welten. Das Bewegen zwischen räumlich weit entfe ten Rechne wird bei mode en grafischen WWW-Browse auf einen Mausklick reduziert. In HTML-Dateien können Verweise notiert sein und dadurch inhaltliche Verknüpfungen zwischen eigenen Inhalten und denen anderer Anbieter hergestellt werden. Auf dieser Grundidee beruht letztlich das gesamte World Wide Web, und dieser Grundidee verdankt es seinen Namen. Im Zeitalter der Kommerzialisierung des Inte et sind natürlich auch die Verweise zu einem kommerziellen Gegenstand geworden. Anklickbare Werbe-Grafiken ("Banner") auf häufig besuchten Seiten führen zu Anbiete , die für die Plazierung der Banner Miete bezahlen. Auch das sind Verweise. Glücklicherweise gibt es daneben aber weiterhin genügend "herkömmliche" Verweise im WWW, die einfach nur die Grundidee des Web verfolgen und zur weltweiten Ve etzung von Information beitragen wollen.
HTML ist ein sogenanntes Klartext-Format. HTML-Dateien können Sie mit jedem beliebigen Texteditor bearbeiten, der Daten als reine Textdateien abspeiche kann. Es gibt also keine bestimmte Software, die man zum Erstellen von HTML-Dateien benötigt. Zwar gibt es längst mächtige Programme (HomeSite, AOLPress, Netscape Composer, Front Page u.s.w) die auf das Editieren von HTML spezialisiert sind, doch das ändert nichts an der entscheidenden Eigenschaft:
HTML ist nicht an irgendein bestimmtes, kommerzielles Software-Produkt gebunden. Die Klartext-Befehle von HTML sind für Maschinen und Menschen gedacht. Da HTML ein Klartextformat ist, läßt es sich auch hervorragend mit Hilfe von Programmen generieren. Von dieser Möglichkeit machen beispielsweise CGI-Programme Gebrauch.
|
HTTP |
Abkürzung für Hyper Text Transfer Protokoll. Ein Inte et-Übertragungsprotokoll, welches zur Übermittlung von HTML-Dokumenten im WWW verwendet wird. Alle URLs im WWW beginnen mit http://...
|
Interpretersprachen |
Ein Interpreter führt ein in einer Programmiersprache geschriebenes Programm aus. Er muß das Programm jedesmal neu interpretieren, um es ausführen zu können. Die "Übersetzung" wird also nicht gespeichert. Heute werden Interpreter fast nur noch bei Scriptsprachen wie Perl und bei allen Shells verwendet. Der Vorteil von Interprete gegenüber Compile ist, daß das Interpretieren viel schneller geht als das Kompilieren.
|
Include Dateien |
siehe XSSI
|
Kompilersprachen |
Ein Compiler kompiliert ein geschriebenes Programm in dauerhaften Maschinencode. Die Kompilation ist ein einmaliger Vorgang, muß also nicht für jeden Durchlauf des Programms e eut vorgenommen werden, weil die "Übersetzung" gespeicher wird.
|
Linux |
Linux ist ein frei verfügbares Multitasking und Multiuser Betriebssystem das von Linus Torvalds und vielen freien Entwickle weltweit entwickelt wird. Linux bietet mittlerweile alle Funktionalitäten die man von einem mode en Betriebssystem erwartet.
|
MySQL Datenbank |
MySQL ist eine Freeware Datenbank die auf diversen Betriebssystemen läuft. MySQL ist SQL kompatibel. MySQL läuft unter Linux als Datenbankserver ohne grafische Oberfläche. Zusätzlich zum SQL-Befehlssatz ist bei MySQL eine große Anzahl an Funktionen und Felddatentypen implementiert. Dies hat große Vorteile bei großen Datenbankserve mit vielen Datensätzen
|
mod_perl |
Mit mod_perl wird ein Perl-Interpreter direkt in den Apache eingebaut (ein sogenantes Modul). Für einen Perl-Programmierer ist mod_perl einfach ein MUSS.
|
Mailserver |
Ein Mail-Server ist ein Server in einem Netzwerk oder bei einem Online-Dienst (Provider), der nur für den Empfang und die Zustellung von E-Mails zuständig ist. Der Mail-Server verfügt über einzelne Speicherbereiche für jedes Mitglied, in denen die Post abgelegt wird (wie ein Postfach). Mail-Server haben meist eigene Adressen; z.B. bei CompuServe: mail.Compuserve.com. Er basiert auf dem smtp / pop - Protokoll. weiteres siehe unter smtp.
|
ODBC |
Dabei handelt es sich um einen Standard für Datenbankzugriffe der ursprünglich von Microsoft stammt. Im Normalfall kann nämlich eine Datenbank-Applikation (in diesem Beispiel Microsoft Access) nicht auf fremde Datenbank-Formate zugreifen (von einigen Ausnahmen abgesehen). Die ODBC (Open Database Connectivity) - Schnittstelle ist nun eine Möglichkeit dieses Problem zu lösen. Dazu wird die Datenbank auf die nicht direkt zugegriffen werden kann, hinter einem ODBC-Treiber "versteckt". Der eingesetzte Treiber ist für das jeweilige Datenbankformat maßgeschneidert und somit in der Lage auf die Datenbank zugreifen zu können. Seiner Umgebung, also dem Betriebssystem, bietet der ODBC-Treiber solche Datenbanken nun als ODBC-Datenquellen an. ODBC-Datenquellen erlauben einen standardisierten Zugriff mit Hilfe einer genau definierten Schnittstelle. Der jeweilige ODBC-Treiber setzt die über diese Schnittstelle eintreffenden Kommandos in das spezifische Format der verwendeten Datenbank um. Die eigentliche Datenbank-Applikation muß nun nur noch in der Lage sein auf ODBC-Datenquellen zugreifen zu können.
|
Perl |
Perl steht für Pratical Extraction an Report Language (Pratische Sprache für Daten Extraktion und Ausgabe). Perl ist eine interpretierte Scriptsprache, die von Larry Wall entwickelt wurde. Sie ähnelt der Programiersprache C, schließt jedoch eine Reihe von populären Unix-Dienstprogrammen ein. Im allgemeinen sind Scriptsprachen einfacher und schneller zu kodieren als strukturierte komilierten Sprachen wie z.B. C++.
|
Performance |
Die Leistungsfähigkeit eines Computersystems wird ge e mit dem Begriff Performance umschrieben.
|
Preemptives Multitasking |
Beim preemptiven Multitasking werden wie beim kooperativen Multitasking Prioritäten an die einzelnen aktiven Anwendungsprogramme durch das Betriebssystem vergeben. Während beim kooperativen Multitasking das Programm mit der höchsten Priorität allerdings die gesamte Rechenleistung für sich beanspruchen kann, wird beim preemptiven Multitasking die Rechenleistung, nach Priorität gegliedert, unter den aktiven Programmen aufgeteilt, wodurch eine effektivere Nutzung des Systems möglich ist.
|
PlugIn |
PlugIns sind diverse Zusatzprogramme die der Browser benötigt um einen Webseite die eine solches Programm benötigt darstellen kann.
|
Quellsprache |
Die Quellsprache ist die Programmiersprache, in der der Quellcode geschrieben wurde.
|
Redundantes Netzteil |
Ist eine Verdopplung von Geräten in diesem Fall eine Netzteil, bei denem im Fehlerfall das zweite Gerät die Funktion übe immt. Somit wird eine Redundanz geschaffen.
|
SQL |
Die "Standart Query Language" (Standart-Suchabfragesprache) ist eine strukturierte Abfragesprache für Datenbanken. Sie Ermöglichen die Abfrage, Aktualisierung und Pflege von Datenbanken. SQL bildet einen inte ationalen Standart für Abfragesprachen und wurde von ANSI und der ISO genormt. MySQL Datenbanken werden mit SQL abgefragt und verwaltet.
|
Samba |
Mit dem Programmpakett Samba von Linux des Australiers Andrew Tridgell kann ein beliebiger Unix / Linux - Rechner zu einem leistungsfähigen File- und Printserver für Dos und Windowsrechner ausgebaut werden. Samba hat es mit ermöglicht über die Netzwerkumgebung meine Perlskripte und HTML Dateien direkt, im entsprechenden Verzeichnis des Servers, abzuspeiche .
|
SSL |
Secure Sockets Layer. Es gibt verschiedene Ansätze, um sichere Transaktionen im World Wide Web zur ermöglichen. Das von Netscape Communications Corporation entwickelte SSL Protokoll hat sich hierbei als De-facto-Standart etablieren können. Das SSL - Protokoll ist zudem nicht auf die Verwendung im WWW beschränkt, sonde lässt sich auch für andere Dienste (z.B. Telnet) nutzen, da es unabhängig vom verwendeten Applikationsprotokoll ist.
|
smtp |
Das SMTP - Protokoll ist der Inte etstandard zur Verteilung von elektronischer Post. Das Protokoll ist textorientiert un setzt auf das TCP/IP Protokoll auf. Eine Nachricht besteht aus Kopf und Rumof. Der Kopf enthält u.a. Datum, Bezug, Empfänger, Absender, Kopieempfänger; der Benutzer wird für jeden dieser Einträge durch einen >>prompt<< angesprochen. Der Rumpf besteht typischerweise aus freiem ASCII-Text. Nachrichten mit mehreren Empfänger auf einen Zielhost werden nur einmal übertragen und dort verteilt (Mailserver). SMTP definiert nicht wie die Nachricht von einem oder zu einem anderen Benutzer von SMTP vermittelt wird.
|
TCP/IP |
TCP/IP steht für Transmission Control Protocol / Inte et Protocol. Das Inte et war zuerst ein vom US-Verteidigungsministerium erdachtes Netzwerk, um Computer so miteinander zu verbinden, daß Ausfälle von Teilen des Netzes nicht die Integrität des gesamten Netzes in Frage stellen. Aus diesem Netz entwickelte sich das Inte et und dieses benutzt immer noch TCP/IP. TCP kümmert sich dabei um die Zustellung der Datenpakete, während IP den Transport übe immt. Zu TCP/IP gehört auch das TCP sehr ähnliche UDP-Protokoll, das allerdings verbindungslos ist und demnach keine Quittung der Pakete verlangt. Auf TCP/IP setzen die meisten höheren Inte et-Dienste wie FTP, Telnet und SMTP, auf. Diese befinden sich auf der siebten Ebene des OSI-Modells.
|
TCP |
TCP ist die Abkürzung für Transmission Control Protocol und ist ein wesentlicher Bestandteil des TCP/IP-Protokolls. TCP basiert auf der vierten Ebene des OSI-Schichtenmodells und arbeitet im Vollduplex-Betrieb. Es ist verbindungsorientiert und verlangt eine Empfangsquittung für jedes abgeschickte Datenpaket.
|
Vernetzung |
Einen Computer mit einem Netzwerk zu verbinden wird als Vernetzung bezeichnet.
|
Virtuelle Hosts |
Mit HTTP/1.1 wurden die sogenanten Name-based bzw. Non-IP Virtual Hosts eingeführt, d.h. es lassen sich vituelle Server realisieren, ohen jeweils eine eigene IP-Adresse vergeben zu müssen. Im Namensserver muss lediglich ein Hostname-Alias eingetragen werden.
|
Web-Browser |
Ein Web-Browser erlaubt den Zugriff auf das Inte et, insbesondere zur Darstellung von Seiten des WWW wird er benötigt. Der Browser greift über die Zieladresse (URL) afu ein HTML-Dokument zu. Web-Browser enthalten normalerweise zahlreiche eingebaute Zusatzprogramme, die beispielsweise Grafik oder Audioformate unterstützen
|
WebSite |
Die WebSite ist die Gesamtheit aller HTML-Seiten, die unter einer bestimmten Inte et-Adresse zu finden sind. Dabei müssen die HTML-Seiten nicht unbedingt auf einem einzigen Computer gespeichert sein.
|
Webseite |
Eine Webseite ist eine mit HTML gestaltete Inte et-Seite. Ein Beispiel wäre die Homepage
|
XSSI |
Mit Hilfe von Extendet Server Side Includes (auch unter der Abkürzung SSI bekannt) können Sie direkt innerhalb von HTML-Dateien dynamische Information, z.B. Datum und Uhrzeit,
einbinden. Sie können auch CGI-Programme starten und deren Ausgaben, beispielsweise einen Zählerstand mit Anzahl Zugriffen auf die aktuelle Datei, in die HTML-Datei
einbinden. Server Side Includes werden nur ausgeführt, wenn der WWW-Browser die HTML-Datei über einen installierten WWW-Server aufruft, also mit einer URL-Adresse vom
Typ http://.... Voraussetzung ist fe er, daß der installierte WWW-Server die Server Side Includes unterstützt. Damit ein WWW-Server sofort erkennt, daß eine HTML-Datei Server Side Include Anweisungen enthält, ist es wichtig, solche HTML-Dateien mit einer speziellen
Dateinamenendung zu kennzeichnen. Üblich sind die Dateiendungen .shtml, .shtm oder .sht.
|
- Quellen und Literaturverzeichnis
Handbuch fuer |
Suse Linux | http://www.suse.de |
|
Holz, Schmitt & Tikart |
Linux fuer Internet und Intranet | mitp ISBN 3-8266-0450-4 |
|
Karsten Guenther |
Linux-Kompaktreferenz | mitp ISBN 3-8266-0594-2 |
|
Dr. Olaf Borkner-Delcarlo |
Das Samba Buch | SuSE PRESS ISBN 3-930419-93-9 |
|
Bryan Costales & Eric Allman |
sendmail kurz & gut | O`Reilly ISBN 3-89721-202-1 |
|
Lars Eilebrecht |
Apache Webserver | mitp ISBN 3-8266-0612-4 |
|
Yarger, Reese & King |
MySQL & mSQL | O´Reilly ISBN 3-89721-163-7 |
|
Garry David Bouton & Barbara Bouton |
Adobe Photoshop 5 | Markt & Technik ISBN 3-8272-2037-8 |
|
Istvàn Velsz |
3D Studio MAX R3 | Addison-Wesley ISBN 3-8273-1514-x |
|
Gundavaram |
CGI-Programmierung | O´Reilly ISBN 3-930673-43-6 |
|
Schilli |
GoTo Perl 5 | Addison-Wesley ISBN 3-8273-1378-3 |
|
Wall, Christiansen & Schwartz |
Programieren mit Perl | O´Reilly ISBN 3-930673-48-7 |
|
Christiansen & Torkington |
Perl Kochbuch | O´Reilly ISBN 3-89721-140-8 |
|
Born |
HTML 4 | Markt & Technik ISBN 3-8272-5354-3 |
|
Stefan Muenz |
SELFHTML | http://www.teamone.de/selfaktuell/ |
|
Andreas Grupp |
Hompage | http://www.elektronikschule.de/~grupp/ |
|
Apache Foundation |
Apache Webserver | http://www.apache.org |
|
Apache::ASP | http://www.apache-asp.org/ |
|
MySQL Dokumentation | http://www.mysql.org/ |
|
|