Homepage mit PHP und MySQL
Dokumentation
Meine technische Voraussetzungen:
Domain bei 1und1.com
, man muss einen Tarif wählen, der eine
MySQL-Datenbank beinhaltet
weitere Tools
Einleitung
Diese Dokumentation wurde unter der Voraussetzung erstellt, dass die
Erstellung einer Homepage mit PHP und MySQL wenig kosten soll und auch
von
einem Anfänger durchgeführt werden kann. Deshalb habe
ein
Beispiel mit relativ primitiven Scripten dokumentiert. Wie
man
eine Homepage generell erstellen kann (ohne PHP und MySQL), habe
ich hier dokumentiert.
Alles was dort
schon dokumentiert ist, habe ich
bewusst bei dieser Dokumentation nicht mehr aufgeführt. Ob man
die Skripte unverändert übernehmen will, muss
jeder selbst entscheiden, die Ansichten, was schön
und
wünschenswert ist, gehen weit auseinander. Ich
habe mich bei diesem Konzept an die Homepage der ASM angelehnt,
wenn ich auch nicht so professionelle Skripte verwendet
habe. Ein Professioneller macht dies anders, aber
der
kann das ja bereits, ich möchte Anfänger
unterstützen.
Kern dieses Designs ist eine SQL-Datenbank. Jeder hat schon mal mit
einer Excel-Tabelle gearbeitet, eine DB ist auch so etwas
ähnliches, nur dass es mehrere Tabellen gibt, die ggf.
mehrfach
indiziert sind und untereinander verknüpft sein
können. Über
Datenbanken gibt es genügend Dokumentationen im Internet, dazu
schreibe ich
bewusst nichts.
Datenbank
Hier ist ein Beispiel
so einer Datenbank,
das vollständig ist. In diesem Beispiel sieht man
sofort,
dass es eigentlich nur 4 verschiedene Typen gibt, wenn man die Tabelle
visits außer acht lässt, sind es nur 3 Typen: und
zwar
navigation, die Beschreibungstabellen wie dbkonzept und
dokubuchwebseite etc.
und die
Einleitungstabellen. Alle Beschreibungstabellen sind mehr oder minder
gleich aufgebaut,
müssen aber nicht, das hängt von den
Wünschen und
Voraussetzungen des Benutzers ab. In die
allgemeine
Tabelle kommt z.B. der Einleitungstext. Ein Beispiel
hierfür
ist die Tabelle dbkonzept. Die Tabelle kreisentfernung ist
etwas
anders aufgebaut, hier ging es mir darum, mir die Eingabe der
Entfernung pro Ort insofern zu vereinbachen, dass ich nur einmal die
Entfernung pro Landkreis eingeben muss. So wird derjenige, der diese
Tabelle pflegt, geführt. Die Einleitungstabellen (wie
z.B. dbkonzept) bestehen eigentlich nur einem Feld, dem Feld
text, die anderen Felder wie id, kommentar und erstellt sind nur
für Dokumentationszwecke. In das Feld text kann man eine
herkömmliche html-Datei einfügen, muss aber auch
nicht. Es
spielt keine Rolle, ob die header-Informationen da sind oder nicht. Der
Vorteil einer solchen Tabelle liegt darin, dass die Administrator, der
diese Tabelle pflegt, nur das Passwort für "seine" Datenbank
braucht. (Im herkömmlichen Verfahren würde er einen
html-Editor und die Zugangsberechtigung für den ftp
benötigen.) Wenn er aber seine Seite "schön"
gestalten
will,
ist es für ihn einfacher, dies mit einem html-Editor zu tun
z.B.
NVU. Ich rate aber davon ab, dies mit Word zu machen. Die
Formatierungen bei Word und html sind sehr
unterschiedlich, die sollte man nicht mischen. Man kann sich die
Arbeit der eigenen html-Formatierung auch sparen, z.B. man erstellt
einen Report aus Access, der als Webseite ausgegeben wird. In diesem
Fall rate ich aber dazu, die von Access erzeugte html-Datei
unverändert mittels ftp auf die Homepage zu kopieren. In der
Regel
wird man aber die Tabellen mit unformatierten Texten füllen
und
die Formatierung der Formatdatei überlassen (siehe weiter
unten).
Ich persönlich habe bei der Bücherei, die in einem
lokalen
Access-System gespeichert ist, die einzelnen Tabellen in MySQL geladen.
Ein anderes Beispiel ist eine Tabelle mit Straßennamen. Wie
ich das gemacht habe siehe
hier.
Fenstertechnik
(Programm index.html)
Die Homepage hat 3 Fenster, das linke Fenster ist die Navigation, das
rechte Fenster das eigentliche Hauptfenster, dann gibt es noch ein
Überschriftenfenster, wo man seinen Verein im Bild darstellen
kann.
Das Startprogramm (index.html) ist
hier als Textdatei
dargestellt. Ein Problem bei der Fenstertechnik ist, dass man
nicht
weiß, wie groß der Bildschirm (Einstellung Pixel,
ob 1024 X
768 oder auch 1680 X 1050) des Benutzers ist, bzw. es relativ
schwierig ist, darauf angemessen zu reagieren. Deshalb empfehle ich,
die verwendeten Parameter, insbesondere den Parameter
src="navigation.php" scrolling="auto" zu
wählen. Das hat den Vorteil, dass bei kleineren
Bildschirmen
der ganze Inhalt des Naviagationsfensters durch Scrolling sehen zu
können. Ein weiterer wichtiger Punkt ist, dass man die
Tabellenwerte (Breite und Höhe) und auch die
Spaltenbreite
nicht absolut (also mit Pixel) sondern mit Prozentwerten definiert.
Hier wird am besten auf die unterschiedliche
Fenstergröße
reagiert.
Steuerprogramme
Beim Start werden also gleichzeitig drei Programme gestartet:
top.php, navigation.php und start.php, das
erste
wird im oberen
Fenster, das zweite im linken, das dritte im
rechten Fenster ausgeführt. Die Anzahl der Navigationszeilen
sind
variabel, sie werden in der
Tabelle navigation festgelegt. Hier findet dann der erste Link statt,
der in der Regel ein Untermenü ist, wie z.B. Kataster Auswertungen oder Kirchenbücher. Es kann auch kein
Untermenü
da sein wie bei Start, wo bei meinem Beispiel das Straßenverzeichnis von Kriegshaber
erscheint.
Eine weitere Möglichkeit ist der Aufruf einer neuen Homepage,
die
unsere Fenstertechnik verlässt, siehe das Beispiel
Dokumentation.
Es ist auch sinnvoll, in der Navigationstabelle ein weiteres Feld mit
dem Namen aktiv und Standardwert j einzuführen. Im Normalfall
ruft
man das Unterprogramm navigation.php auf, das nur die aktiven
Sätze berücksichtigt. Beim Test kann man bestimmte
Einträge auf aktiv=n setzen, d.h. sie erscheinen nicht im
Menü. Um auch beim Testen die nichtaktiven Menüpunkte
ansprechen zu können, hat man zwei Testprogramme: statt
index.hmtl
das Programm index-test.html, das statt dem Unterprogramm
navigation.php das Programm testnavigation.php. Das Programm
testnavigation.php fragt die Variable aktiv nicht ab, d.h. es
erscheinen im Menü sowohl aktive als auch inaktive
Sätze.
Untermenü
Wenn man ein Untermenü hat, sollte man als erste Zeile den
Link
zurück definieren, die anderen Links dieses
Untermenüs
werden im Hauptfenster ausgeführt. Die Untermenüs
können aber auch html-Scripte sein wie z.B. Grenzen.html.
Dieses Programm habe ich mit NVU geschrieben. Wichtig ist auch ein Link
auf das Programm
navigation.php, damit man wieder zur Startseite der Homepage
zurückkommen kann. Normalerweise verwende ich statt des
Untermenüs eine neue Index-Datei z.B. index-kat.html, die
natürlich den Aufruf für das Untermenü enthält.
Dies hat Vorteile, wenn man von einem Programm im Untermenü
Kataster nicht ins Hauptmenü springen will, sondern wieder den
Status zeigen will, wie er beim ersten Aufruf dieses Untermenüs
Kataster war.
Dateneingabe
Ich habe bewusst den lokalhost nicht erwähnt, ich arbeite zwar
damit, aber man braucht ihn nicht unbedingt, denn die Daten
für die
SQL-Tabellen kann man auch online pflegen, Aufruf von der Domain (also
https://login.1und1.de/ ) und zu <MySQL-Datenbank>
Am
Anfang gibt noch keine Datenbank, die man leicht über das
Administratormenü erstellen kann. Wenn man -
zumindest
vorerst - gleich beginnen will, kann man <SQL> aufrufen.
Alternativ kann man sich phpMyAdmin runterladen.
Der
Aufruf erfolgt mittels Befehl Update.html, das in einem
geschützen
Verzeichnis liegt, damit nur Berechtigte mittels Passwort die Tabellen
pflegen können. Der Unterschied zur ersten Methode ist der,
dass
man nur die Pflege der Datenbank durchführen kann, bei der
ersten
Methode hat man alle Administratorrechte. Wenn man viele Datenbanken
hat, weil verschiedene Personen unabhängig von einander "ihre"
Daten pflegen, nimmt an am besten phpMyAdmin Version 3.5 oder
höher, Details
siehe hier.
Programmierschritte
Empfohlene Vorgehensweise für Anfänger für
das Schreiben eines Skriptes mit php
z.B. strassen6.php, das die Straßen von Kriegshaber zeigt. Zuerst muss man sich
überlegen, welche Felder man zeigen will, hier in diesem
Beispiel
sind es alles Felder einer
MySQL-Tabelle: SELECT strname, schluessel, id, stadtbeznr FROM statamtstrassen ORDER by schluessel
Als zweites überlegt man sich, wie man diese Daten darstellen
will, hier empfehle ich eine Tabelle, die man zuerst in einem Muster
mit NVU erstellt, z.B. hier
d.h. man erstellt eine Tabelle, in diesem Beispiel mit 3 Spalten und
dann fügt man die Daten des Select ein und passt entsprechend
die
Größe der Tabellenzellen an.
Nun schaut man sich das erstellte Beispiel im Editor an: siehe hier.
Als nächstes muss man die php-Befehle einbauen, das Ergebnis
steht hier.
Betreffend Literatur verweise ich wieder auf diese Seite.
Hier sind verschiedene Beispiele aufgeführt. Ich habe nicht
die
Absicht, einen Kurs für PHP hier zu dokumentieren,
das ist
für jemand mit Programmiererfahrung ohnehin kein Problem und
jemand, der noch nie programmiert hat, geht am besten in einen Kurs bei
der Volkhochschule oder einen Computerclub. Der Computerclub macht das
praktisch kostenlos, wenn man Mitglied ist. Wenn man sich
streng
an dieses
Beispiel hält, braucht man es ja nur abzuschreiben und analog
auf
andere Select-Befehle anzupassen. Zur Programmierung mit php-Befehlen
verwende ich WinVi32.exe (mit der Option Zeilenzahlen
zeigen). Danach wird das
Skript (hier heißt es strassen6.php) auf den Server mittels ftp
kopiert. Dann kann man es online (mit Mozilla Firefox)
ausprobieren. Wenn man Fehler bei php hat, schreibt der Interpreter die
betreffende Zeilennummer raus, die Änderung wird wieder auf
dem PC
durchgeführt, mit ftp raufkopiert und wieder ausgetestet.
Hintergrund Farben und
Bilder
Man kann für die einzelnen Fenster Hintergrundfarben
benützen, einige
Beispiele.
Ebenso sind Hintergrundbilder möglich, in der Regel muss man
mit
einem Graphikprogramm (z.B. Paint Shop Pro oder Adobe Photoshop) die Farben aufhellen, damit
man die Schrift besser lesen kann. Hier ein Beispiel für ein Hintergrundbild von einer anderen Seite.
Textgestaltung
mit html-Steuerzeichen
Die darzustellenden Texte werden im
allgemeinen in
MySQL-Tabellen gepflegt. Diese Tabelle(n) werden mittels eines
Programmes (z.B. gestaltung.php) ausgelesen und auf dem Bildschirm
dargestellt. In diesem Text kann grundsätzlich jedes
html-Steuerzeichen verwendet werden. Das html-Handbuch steht hier.
Einige häufige Steuerzeichen sind hier
aufgeführt: Es
gibt 5 verschiedene Überschriftenkennzeichen h1 bis h5. Dann
kann
man Texte mit Fettdruck hervorheben, es gibt das Zeichen bold
(b)
und das Zeichen strong (strong). Wie diese Textstellen interpretiert
werden, hängt davon ab, was in der Format-Datei definiert
wurde
(bei mir FORMATE.CSS). Diese Formatdatei steht man mir im
Root-Verzeichnis und wird im Kopf von jedem Programm aufgerufen.
Weitere html-Steuerzeichen sind big, man kann auch zwei oder drei
big-Steuerzeichen verwenden. big und das Gegenstück small sind
relative Schriftgrößensteuerzeichen. Was die
Standardschriftgröße ist, ist auch in der
Formatdatei
definiert. Wenn einem Benützer dies nicht passt, kann er auch
diese Formatdatei außer Kraft setzen und eine eigene
Schriftgestaltung im Browser einstellen. Die geht z.B. bei Mozilla
Firefox hier: <Extras> <Einstellungen>
<Inhalt>
<Erweitert> und auch <Farben> hier kann man
dann die
Schriftgestaltung einstellen.
Zur Datenpflege in MySQL:
Hier kann man alle Daten eingeben, die auf
der Tastatur drauf sind (in den Programmnamen empfehle ich es nicht zu
tun,
verwendet nur Zeichen des englischen Keyboards, kein
Zwischenraumzeichen (space) verwenden!).
Nachdem die Daten später mit html-php interpretiert werden,
kann
man praktisch alle html-Zeichen eingeben wie z.B. <B>
für
bold (fettgedruckt), oder <BR> für break (neue
Zeile), damit
man eine bestimmtes Feld an einer gewünschten Stelle absetzt
(damit z.B. eine Telefonnummer nicht auseinandergerissen wird), sehr
beliebt bei mir sind die Verweise auf weitere Seiten im Internet,
entweder der eigenen Homepage oder auch einer ganz fremden.
Z.B. die Unterseite für die aktuelle Situation auf
der
Augsburger Hütte heißt:
http://www.heinz-wember.de/MySQL-HP-Entw/huetten/ah_aktuell.html
es wird folgendermaßen codiert: <A
HREF="http://www.heinz-wember.de/MySQL-Kriegshaber/dokunavigation.php">Dokumentation Navigation</A>
Die Details zur HTML-Programmierung kann man hier nachlesen.
Navigationstypen
Bei der Navigation gibt
es drei verschiedene Typen von Links:
- <A target="navigation"
href="huettenstart.html">Hütten</A>
Sprung zum Programm huettenstart.html, das im linken Fenster
ausgeführt wird (Untermenü)
- <A target="content"
href="start.php">Start</A>
Sprung zum Programm
start.php, das im
rechten Fenster ausgeführt wird
- <A target="_blank" href="doku/doku.html" >
Dokumentation</A> Sprung zum Programm
doku.html, das die
Fenstertechnik verlässt und den ganzen Bildschirm
benützen
kann.
Anmerkung: ich empfehle den Parameter target="_blank" statt
target="blank" zu verwenden. Damit ist sichergestellt, dass auf jeden
Fall ein neues Fenster aufgemacht wird.
Zugriff auf Seiten mit
Passwortschutz
Dazu werden diejenigen Seiten, die man schützen will, in ein
Verzeichnis gelegt, für das bei admin Domain bei 1und1 ein
Passwort definiert worden ist. Dies ist nur ein Beispiel, ich habe ein
Verzeichnis Fotos angelegt, das mehrere Unterverzeichnisse haben kann
(die dann natürlich denselben Passwortschutz haben). Die im
Beispiel gezeigte Fotogalerie ist mit dem Programm Ulead Photo Explorer
erzeugt worden. Als zweites geschütztes Verzeichnis ist
mitglieder
angelegt worden, das hier der Einfachheit halber dasselbe Passwort hat
(nachdem es aber in einen anderen Verzeichnis liegt, wird man wieder
aufgefordert, das Passwort einzugeben.
Administrator
Der letzte
Menüpunkt ist schließlich das
Administratormenü. Erstens ist der Aufruf zum Pflegen der
Tabellen in einem besonderen Verzeichnis, das mit Passwort versehen
ist. In diesem geschützten Verzeichnis wird das Programm zur
Pflege der Datenbanktabellen aufgerufen. Dazu muss man
natürlich die 4 folgenden Parameter wissen, die nur der
Administrator bekommt.
Datenbankname |
db277799443 |
Hostname |
db477.1und1.de |
Benutzername |
dbo277799443 |
Aktuelles Passwort |
falsch |
Natürlich
kann man sich auch als Administrator bei der Domain einloggen
(https://login.1und1.de/) und die Funktion
<MySQL-Datenbank>
aufrufen. Bei dieser Funktion hat man dann auf alle vorhandenen
Datenbanken (bei mir sind es mehrere) Zugriff, beim obigen Zugriff kann
man das auf eine bestimmte Datenbank beschränken. Das
Konzept für die Musterhomepage unter PHP und MySQL gestattet
entweder eine Datenbank oder mehrere
Datenbanken. Der Tarif bei 1und1 für eine
solche
Domain ist 1und1 Homepage Perfect, der momentan ca 7 Euro pro Monat
kostet (siehe bei 1und1 unter 1und1-Produkte, Hosting, private
Homepages, 1und1 Homepage Perfect.)
Verteilte Datenbanken
Das
bisher Gesagte geht mit einer Datenbank,
in der alle Abteilungen ihre
Tabellen haben. Natürlich hat der Administrator für
die
Datenbank dann auch alle Rechte für alle Abteilungen. Dies ist
sicher ein zweckmäßiger Weg, wenn nur ein
Administrator die
gesamte Homepage pflegt. Es ist auch denkbar, wenn mehrere
Personen die Datenbank pflegen, dass man die Security so
lässt. Es
kann jeder alles von jedem ändern.
Wenn man das aber nicht möchte, gibt es die
Möglichkeit, mit
verteilten Datenbanken zu arbeiten, d.h. jeder Teiladministrator hat
seine eigene Datenbank, in der neben den Abteilungstabellen auch die
Tabelle für die Navigation der betreffenden Abteilung
vorhanden
ist. Alles was im Gesamtkonzept in der Tabelle navigation mit
Gruppennummer ungleich 00 drinsteht, muss dann natürlich auf
die
einzelnen Abteilungsnavigationstabellen verteilt werden.
Der Geamtadministrator erstellt für jeden Teiladministrator
eine
Datenbank und auch ein Verzeichnis, wo er die Administratorrechte
für die Pflege seiner Datenbank hat. Bei meiner Homepage für die Sektion Augsburg hatte ich es so
installiert, dass es für die alle Abteilungen einen
eigenen
Administrator gab. Die Tabelle navigation für diesen
Unteradministrator nannte ich sicherheitshalber anders, z.B. untermenu.
Sie war aber fast identisch mit der Tabelle navigation aufgebaut.
Der Unteradministrator kann also sein Untermenü pflegen und
ebenfalls seine Abteilungstabellen pflegen.
Jeder Unteradministrator kann natürlich weitere
Abteilungstabellen
erstellen, wie es sich aus der Sachlage in seiner Abteilung ergibt.
Weitere Menüpunkte
konnten
natürlich auch mit einer Tabelle gepflegt
werden. Damit
hatte jeder Teiladministrator maximale Flexibilität im
Aufbau seiner Unterseiten.
Das bedeutet aber, dass man bei 1und1 einen Tarif braucht, in der man
entsprechend viele Datenbanken zur Verfügung hat, da gibt es
den
Tarif 1und1 Homepage Business, der mehrere Datenbanken und einen
Webspace zur Verfügung stellt, oder den Tarif 1und1 Homepage Business Pro, der
10 Datenbanken und einen Webspace von 4 GB zur Verfügung
stellt,
dieser Tarif kostet nach 6 Monaten monatlich etwa 30 Euro.
Besonderheiten
Diese Homepage ist so designed, dass bei allen
Fenstergrößen, egal ob
800 x 600, 1024 x 768 oder auch 1680 x 1050 Pixel die
Bildschirmgröße
optimal genutzt wird. Bei kleinen Fenstergrößen
erscheint das
Navigationsfenster natürlich nicht vollständig auf
dem Bildschirm. Dann
kommt die Windows-Laufleiste. Außerdem kann man die Breite
des
Navigationsfenster auf Kosten des großen rechten Fensters
mittels
linker Maustaste am Fensterrand vergrößern.
Die Spaltenbreite kann angegeben werden, aber ob die tatsächliche
Spaltenbreite so auch gezeigt wird, hängt von den Werten der
Spalte ab. Beispiel: Man möchte erreichen, dass der
Straßenname "Obere Osterfeldstraße" nicht in zwei Zeilen
aufgeteilt wird. Die Überschrift zu der Spalte ist
"Straßenname heute". In diesem Fall wird die Überschrift in
zwei Zeilen dargestellt und natürlich auch der Spalteninhalt Obere
Osterfeldstraße. Das kann man verhindern, wenn man das Space
maskiert darstellt also Spaltenüberschrift
"Straßenname heute". In diesem Fall wird die
Überschrift in einer Zeile gezeigt. Generell kann auch beim
Bindestrich eine automatische Teilung erfolgen. Dieses Problem taucht
natürlich nur dann auf, wenn die Anzahl der Zeichen in allen
Spalten größer als 100 % der Bildschirmbreite ist. Die
Maskierung des Space beim Spalteninhalt Obere Osterfeldstraße
wäre auch eine Möglichkeit, aber dann gilt dies für alle
Darstellungen, was man oft nicht haben will. Will man dies nur bei
einem bestimmen Report erreichen, ist die Maskierung des Space in
der Überschrift die bessere Lösung.
Im Großen und Ganzen sind die gängigen Browser in
der Interpretation
der Steuerzeichen alle gleich. Die Farben der Schriften (bei h1 bis h5
und bold) sind nur sichtbar bei den Browsern Mozilla Firefox, Opera und
Google Crom, nicht jedoch bei Microsoft Internet Explorer 8.0 in
Verbindung Windows Vista. Bei Google Chrom ist mir aufgefallen, dass
das Verändern der Breite des Fensters Navigation nicht
funktioniert.
Programmierbeispiele
Zwei Musterprogramme, die stellvertretend für alle
ähnlichen Programme sein sollen, sind hier vorgestellt.
1. Auslesen einer
Tabelle, hier im Beispiel Alpin-Fahrten der Skiabteilung.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<style type="text/css">
@import url("../FORMATE.CSS")
screen;
body {
font-family:Arial,sans-serif; }
body {
background-color: #FFFFFF; } //
#FFFF00 gelb; #98FB98 hellgrün; #40EoD0 türkis;
#FFFFFF
weiß;
a:link { color:#000000;
text-decoration:underline;}
a:visited { color:#FF0000;
text-decoration:underline; }
a:focus { color:#00AA00;
background-color:#80FF80;}
a:hover { color:#EE0000;
text-decoration:none; background-color:#FFFF99; }
a:active { color:#0000EE;
background-color:#FFFF99;}
</style>
<meta name="author" content="Heinz Wember
Augsburg">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<!-- Heinz Wember: Muster Tabelle auslesen 15-Jul-2009 09:05
-->
</head>
<body>
<br><h1>DAV Augsburg Skiabteilung Ski
Alpin</h1>
<br>
<table style="width: 100%; text-align: left; margin-left: left;
margin-right: auto;" border="1" cellpadding="2" cellspacing="2">
<tbody>
<?php include "../../db/zugriff-dbski.inc.php";
?>
<?php mysql_select_db(MYSQL_DATENBANK) or die(mysql_error());
$abfrage = "SELECT `start` ,
`end` , titel, anmeldung, `kommentar_1` , `kommentar_2`
FROM `skia` where start > now() order by start";
$ergebnis = mysql_query($abfrage);
?>
<?php while($row = mysql_fetch_object($ergebnis))
{
echo
"<tr> <td style=width:
10%; >$row->start
<br> $row->end
</TD>";
echo " <td
style=width: 30%; > <b>$row->titel
</B>";
echo " <td
style=width: 60%; > $row->anmeldung ";
echo "<br>
$row->kommentar_1 ";
echo "<br>
$row->kommentar_2</TD></tr>";
}
mysql_close($db_ski);
?>
</tbody>
</table>
</body>
</html>
2. Das
Standard-Navigationsprogramm
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<style type="text/css">
@import url("FORMATE.CSS")
screen;
body {
font-family:Arial,sans-serif; }
body {
background-color: #98FB98; } // #FFFF00 gelb; #98FB98
hellgrün; #40EoD0 türkis;
a:link { color:#000000;
text-decoration:underline;}
a:visited { color:#FF0000;
text-decoration:underline; }
a:focus { color:#00AA00;
background-color:#80FF80;}
a:hover { color:#EE0000;
text-decoration:none; background-color:#FFFF99; }
a:active { color:#0000EE;
background-color:#FFFF99;}
</style>
<title>DAV Sektion
Augsburg</title>
<meta name="author" content="Heinz Wember
Augsburg">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<!-- Heinz Wember: Muster Navigation 15-Jul-2009 09:05 -->
</head>
<body style="background-image: url(Tofana1.jpg);">
<big>Navigation</big>
<br><br>
<small>
<table width=20%; text-align: left; margin-left: auto;
margin-right: auto;" border="0" cellpadding="2" cellspacing="2">
<tbody>
<?php include "../db/zugriff-dbhpentw.inc.php";
mysql_select_db(MYSQL_DATENBANK) or die(mysql_error());
$abfrage = "SELECT `gruppe` , `ugruppe` , `titel`
FROM `navigation` WHERE `gruppe` = '00' and aktiv = 'j'
ORDER BY `ugruppe`";
$ergebnis = mysql_query($abfrage);
?>
<?php while($row = mysql_fetch_object($ergebnis))
{
echo
"<tr> $row->titel
<br></tr> ";
}
mysql_close($db_hp);
?>
</tbody>
</table>
</center></small>
</body>
</html>
Wie bei beiden Programmen ersichtlich, werden die kritischen
Datenbank-Öffnungsskripte, die ja alle nötigen
Parameter
enthalten, in ein eigenen Verzeichnis gestellt, das
eingeschränkte
Rechte hat, damit nicht jeder darauf zugreifen kann.
phpMyAdmin
Zur Zeit verwende ich eine alte Version (2.7.0)
von phpMyAdmin, das man unter http://www.phpmyadmin.net/ runterladen
kann. Die Version 3.1.5 ist aber auch installiert, die
zusammen mit MySQL 5.0 arbeitet. Dieses Tool gestattet, dass man
für
jede Datenbank eine eigene Security einrichten
kann. Damit kann der Unteradministrator nur die Tabellen seiner
Datenbank pflegen. Ein Passwort für das Verzeichnis der
Administratorfunktion verwendet man sicherheitshalber.
Natürlich kann der
Domain-Administrator mit seinem Passwort alle Datenbanken pflegen. Weitere Details.
Download Version 5.0.4
Hier steht nun das Muster einer
Homepage
Nachsatz
Wie oben schon gesagt, kann man die Datenpflege der
SQL-Tabellen online mittels der
fertigen Skripte von 1und1 machen, wie sie 1und1 zur Verfügung
stellt (natürlich kann man auch andere Provider als
1und1
benützen, aber ich wollte es so darstellen, wie ich es selber
mache) .
Nachdem in der Regel die Daten in einem EDV-erstellten Medium vorliegen
(Word-Dokument oder pdf-Datei), kann man die einzelnen Felder mittels
<kopieren> und <einfügen>
übertragen.
Buch: Die Datenbank MySQL als Hilfsmittel für die Darstellung geschichtlicher Themen von Heinz Wember mit PHP-Version 7.2 (oder praktisch identisch mit 7.4)
Änderungsstand: 15-Aug-2014 update 04-Jan-2021
Heinz Wember