Forum: NOF - Tutorials (185 anschauliche Tutorials zum Lesen und Nacharbeiten) > PHP und MySQL - Tutorials und Kurzanleitungen
PHP und MySQL -> Erstellung von dynamischen Seiten
Hans K.:
Eine MySQL Datenbank ist nicht primär dafür gedacht, soche "Spielereien" wie der PHP und MySQL -> Einbau eines einfachen Counters oder der PHP und MySQL -> Einbau einer Bewertungs- und Kommentarfunktion zu realisieren. Vielmehr ist MySQL eine Datenbank und dient dazu Daten zu verwalten. Dabei reden wir nicht von 2 oder 3 Daten, sondern es können durchaus Hunderte von Daten sein.
Ich habe bereits die eine oder andere Seite in den Vorstellungen gesehen, welche recht aufwendig aufgebaut sind. Egal ob es um Reisen, Filme oder Motorräder geht, viele Webseiten beinhalten viele identische Seiten, nur die Inhalte sind anders.
Was bedeutet es, wenn eine Änderung auf einer der Seiten vorgenommen werden muss? Die Änderung muss auf allen Seiten erfolgen und zwar auf jeder Seite.
Und genau hier macht eine dynamische Seitenerstellung Sinn. Für gleiche Seiten, auf denen einzig die Inhalte unterschiedlich sind, lagert man die Inhalte in die Datenbank aus. Dann wird eine Seite erstellt, welche je nach Aufruf die jeweiligen Inhalte befüllt. So muss man eine einzige Seite erstellen und bei Änderungen auch nur diese eine Seite anpassen.
Beispiel:
Wenn ich eine Website mit Infos zu Motorrädern habe und die technischen Daten aufführe, benötige ich für jedes Motorrad eine seperate Seite. Bei 3 Motorrädern macht das 3 Seiten, bei 500 Motorrädern eben 500 Seiten.
Nun lagere ich die technischen Daten der Motorräder in einer Datenbank aus. Dann erstelle ich 1 (!!) Seite mit dem Design. Die Inhalte werden aus der Datenbank ergänzt, je nachdem wie die Seite aufgerufen wird mit den technischen Daten des jeweiligen Motorrades.
Das bringt zwei wesentliche Vorteile:
1. Es wird nur eine Seite mit dem Grundgerüst erstellt, egal wie viele Motorräder dargestellt werden sollen.
2. Um weitere Motorräder im Netz zu zeigen muss keine neue Seite in NOF angelegt werden. Stattdessen wird ein weiterer Eintrag in der Datenbank vorgenommen, die Seite wird automatisch generiert.
Hans K.:
Wie der Titel bereits beinhaltet, ist ein Paket mit PHP und einer MySQL Datenbank Voraussetzung für die Erstellung von dynamischen Seiten.
Als erstes wird der Speicherplatz für die Daten geschaffen. Dafür muss eine Tabelle in der MySQL Datenbank angelegt werden (Zugang ist der Anleitung des Providers zu entnehmen).
Die Tabelle bekommt die Bezeichnung: Moped
Benötigt werden 18 Felder:
ID - eine fortlaufende ID, welcher die Funktion auto_increment vergeben werden muss (automatischer Zähler)
Modell
Hubraum
Nennleistung
Höchstgeschwindigkeit
Kraftstoffart
Radstand
Reifen_vorne
Reifen_hinten
Bremse_vorne
Bremse_hinten
ABS
Länge
Breite
Höhe
Trockengewicht
zulässiges_Gesamtgewicht
Tankvolumen
Die Felder müssen noch als Typ definiert werden:
Id int(11)
Modell varchar(20)
Hubraum int(11)
Nennleistung int(11)
Höchstgeschwindigkeit int(11)
Kraftstoffart text
Radstand text
Reifen_vorne text
Reifen_hinten text
Bremse_vorne text
Bremse_hinten text
ABS text
Länge int(11)
Breite int(11)
Höhe int(11)
Trockengewicht int(11)
zulässiges_Gesamtgewicht int(11)
Tankvolumen text
int(11) ist ein reines Zahlenfeld, varchar(20) ist ein Feld mit einer Zeichenfolge von maximal 20 Zeichen, text ist ein reines Textfeld.
Hier muss man sich gut überlegen, wie die Typen festgelegt werden. Haben wir z.B. eine Längenangabe, dann werden wir die Längeneinheit nicht in der Datenbank ablegen, sondern beim späteren Aufruf der Variable hinzufügen. Hintergrund: Die Einheit ist auf allen Seiten immer gleich, deshalb hinterlegen wir sie einmal auf der Seite und nicht x-Mal in der Datenbank.
Hans K.:
Natürlich ist die Tabellenbezeichnung und die Felder als Beispiel zu verstehen. Die Bezeichnungen könnt Ihr auf Eure Bedürfnisse anpassen, allerdings müsst Ihr dann bei den nachfolgenden Scripts darauf achten, dass Ihr die Bezeichnungen auch in den Scripts ändert.
Hans K.:
Damit wir auch Ergebnisse auf der Seite haben werden, müssen nun als Erstes Daten in der Datenbank hinterlegt werden.
Gebt mal die folgenden Daten ein:
Modell BMW S 1000 RR
Hubraum 999
Nennleistung 142
Höchstgeschwindigkeit 200
Kraftstoffart Super(plus) Benzin bleifrei, Oktanzahl 95-98 (ROZ) (Klopfregelung; Nennleistung bei 98 ROZ)
Radstand 1422,7 mm
Reifen_vorne 120/70 ZR 17
Reifen_hinten 190/55 ZR 17
Bremse_vorne Doppelscheibenbremse, schwimmend gelagerte Bremsscheiben, 4-Kolben Festsattel, Durchmesser 320 mm, 5 mm dick
Bremse_hinten Einscheibenbremse, Ein-Kolben Schwimmsattel, Durchmesser 220 mm, 5 mm dick
ABS BMW Motorrad Race-ABS, abschaltbar, 4 wählbare Modi: Rain, Sport, Race, Slick (Sonderausstattung)
Länge 2056
Breite 826
Höhe 1138 mm
Trockengewicht 178
zulässiges_Gesamtgewicht 405
Tankvolumen 17,5
Hans K.:
Damit wir auch testen können, ob wir eine Seite mit unterschiedlichen Daten aufrufen können, gebt bitte noch einen kompletten Datesatz ein:
Modell BMW F 700 GS
Hubraum 798
Nennleistung 55
Höchstgeschwindigkeit 192
Kraftstoffart Superbenzin bleifrei, Mindestoktanzahl 95 (ROZ)
Radstand 1.562
Reifen_vorne 110/80-19
Reifen_hinten 140/80-17
Bremse_vorne Zweischeibenbremse, Durchmesser 300 mm, 2-Kolben-Schwimmsattel, ABS
Bremse_hinten Einscheibenbremse, Durchmesser 265 mm, Ein-Kolben-Schwimmsattel, ABS
ABS Serienmäßig
Länge 2.280
Breite 880
Höhe 1.215
Trockengewicht 186
zulässiges_Gesamtgewicht 436
Tankvolumen 16,0 l
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln