Vielen Dank für Ihr Interesse an unserem Gästebuch-Script. Wir empfehlen Ihnen, sich Zeit für die Lektüre dieser Anleitung zu nehmen.
Smilies powered by eLouai Smilies
Das Script ist für den sofortigen Einsatz konfiguriert und eingerichtet. Nachdem Sie das Script per FTP auf den Server kopiert und mit Hilfe der Installations-Routine die Datenbanktabellen eingerichtet haben, können Sie es sofort verwenden.
Wenn Sie Änderungen vornehmen möchten, sollten Sie diese schrittweise durchführen und nach jeder Änderung die Auswirkung auf das Script testen. Sie behalten dadurch den Überblick, welche der Änderungen einen eventuell auftretenden Fehler verursacht hat.
Das HTML-Template wurde nach den Spezifikationen für XHTML 1.0 erstellt. Deshalb enthalten alle einfachen Tags (<br> oder <input>) einen abschließenden Slash (<br /> oder <input type="text" name="feld" />).
Das Script funktioniert wie ein klassisches Gästebuch-Script. Besucher Ihrer Website sehen eine Liste der Einträge - der letzte Eintrag wird zuerst angezeigt. Der Besucher kann über ein Formular einen eigenen Eintrag in das Gästebuch vornehmen.
Zur Administration des Gästebuchs kann der Betreiber sich mit Hilfe der Datenbank-Zugangsdaten (Benutzername und Passwort) über die Datei "/admin/index.php" einloggen. Ist der Administrator eingeloggt, kann er die Datenbanktabellen des Scripts installieren und deinstallieren, und die Einträge ändern und löschen. Der Administrator erhält zusätzlich Informationen über den Autor des Eintrags (IP-Adresse, Browser).
Die Datei "config.php" stellt die Konfigurationsdatei für das Script dar. Zum Ändern der Einstellungen öffnen Sie die Datei am besten in einem Texteditor (z.B.: Wordpad unter Windows).
Die folgende Variable $database enthält die Zugangsdaten zu Ihrer MySQL-Datenbank. Diese Zugangsdaten erhalten Sie beim Einrichten einer Datenbank oder auf Nachfrage bei Ihrem Webspace-Provider. Die $database-Variablen haben folgende Bedeutungen:
$database['host'] | Name des Datenbank-Servers, z.B.: localhost, db98.puretec.de oder
db23.kundenserver.de.
|
|
$database['name'] | Name der Datenbank.
|
|
$database['user'] | Benutzername für die Datenbank.
|
|
$database['pass'] | Passwort für die Datenbank.
|
|
$database['prefix'] | Um die Tabellen von eventuell bereits bestehenden Tabellen unterscheiden zu
können, haben Sie die Möglichkeit, den Tabellen für das Gästebuch eine spezielle
Vorsilbe zu geben.
|
|
|
Folgende Variablen können ebenfalls editiert werden:
$language | Hier können Sie die Sprache festlegen. Eingetragen werden muss hier das Kürzel, dass auch
im Namen der Sprachdatei im Verzeichnis "languages" verwendet wurde ("de" bei
languages.de.inc.php und "en" bei languages.en.inc.php).
|
|
$results_per_page | Diese Variable enthält die Anzahl der Gästebuch-Einträge, die pro Seite angezeigt
werden sollen. Für den Fall, dass mehr Einträge existieren, werden automatisch
Links zur Navigation zwischen den einzelnen Gästebuchseiten eingeblendet. Wenn
Sie die Variable leer lassen oder auf 0 setzen, werden alle Ergebnisse auf einer
Seite angezeigt.
|
|
$direct_page_links | Bei einer hohen Anzahl von Einträgen kann die Liste der Links zu den einzelnen
Gästebuch-Seiten recht lang werden und das Layout der Seite sprengen. Sie können
deshalb festlegen, wie viele der Links angezeigt werden sollen. Wenn Sie also
zum Beispiel 20 Gästebuchseiten haben, erhalten Sie folgende Liste der
Direkt-Links zu den einzelnen Seiten:
|
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
||
Das können beispielsweise auf 9 beschränken. Alle Zahlen nach der 9 werden durch
drei Punkte (können Sie im HTML-Template ändern) ersetzt:
|
||
1 2 3 4 5 6 7 8 9 ...
|
||
Die Anzeige der Direkt-Links wird sich erst ab Seite 6 ändern:
|
||
... 2 3 4 5 6 7 8 9 10 ...
|
||
Tipp: Sie können dieses Verhalten relativ einfach testen, wenn Sie einige
Test-Einträge vornehmen und Zahl der Einträge pro Seite auf 1 beschränken.
|
||
$show_error_messages | Bei Auslieferung des Scripts ist diese Variable standardmäßig auf 'yes'
gesetzt. Das hat zur Folge, dass Sie bei der Konfiguration des Scripts
Fehlermeldungen und Hinweise zur Einrichtung des Scripts erhalten.
Sobald jedoch das System funktioniert, können Sie die Ausgabe der
Meldungen abschalten. So verwehren Sie allzu neugierigen Besuchern den
Einblick in das System.
|
|
$path['templates'] | Diese Variable enthält den Pfad zum Verzeichnis mit den HTML-Templates.
|
|
$file[] | Alle Variablen dieser Form enthalten Dateinamen von Templates. Diese Templates sind näher
im Kapitel "HTML-Templates" erklärt.
|
|
$add_text | Sie können weitere Werte, Text, Variablen oder andere Inhalte an dieser Stelle festlegen.
Diese Inhalte können dann mit Hilfe von entsprechenden Markierungen in geschweiften
Klammern in die Templates übertragen werden.
|
|
Wenn Sie eigene Werte in der Variable $add_text hinzufügen, folgen Sie bitte dem Muster,
das durch die beiden Beispieleinträge deutlich gemacht wurde.
|
$add_text = array( 'txt_additional' => 'Additional', 'txt_more' => 'More' );
Der erste Teil eines Eintrags (z.B.: 'txt_additional') stellt den Namen der Platzhalter im Template dar. Wenn Sie den Wert von 'txt_additional' im Template anzeigen möchten, tragen Sie dort den Namen umschlossen von geschweiften Klammern ein - {txt_additional}. Der Name darf keine Leer- oder Sonderzeichen enthalten. Erlaubt ist nur der Unterstrich (_).
Erstellen Sie auf dem Server folgende Verzeichnisse (bei den meisten FTP-Programmen ist es auch möglich, alle Dateien und Verzeichnisse zu markieren und zusammen auf den Server zu laden):
/guestbook/ /guestbook/inc/ /guestbook/languages/ /guestbook/templates/
Kopieren Sie alle Dateien in ihre entsprechenden Verzeichnisse auf den Server. Alle Bilddateien (.gif, .jpg, .png) müssen im Binär-Modus (Binary) auf den Server übertragen werden. Alle restlichen Dateien müssen im ASCII-Modus (Text-Modus) hochgeladen werden.
Vor dem Hochladen der Dateien müssen Sie die Zugangsdaten zu Ihrer MySQL-Datenbank in der Datei "config.php" angeben. Diese Zugangsdaten erhalten Sie beim Einrichten einer Datenbank oder auf Nachfrage bei Ihrem Webspace-Provider.
Dabei haben die $database-Variablen folgende Bedeutungen:
$database['host'] | Name des Datenbank-Servers, z.B.: localhost, db98.puretec.de oder
db23.kundenserver.de.
|
|
$database['name'] | Name der Datenbank.
|
|
$database['user'] | Benutzername für die Datenbank.
|
|
$database['pass'] | Passwort für die Datenbank.
|
|
$database['prefix'] | Um die Tabellen von eventuell bereits bestehenden Tabellen unterscheiden zu
können, haben Sie die Möglichkeit, den Tabellen für das Gästebuch eine
spezielle Vorsilbe zu geben.
|
|
|
Wenn Sie alle Daten eingetragen und die aktualisierten Dateien auf den Server kopiert haben, können Sie die Datenbank-Tabellen installieren. Loggen Sie sich dafür in den Admin-Bereich ein (/admin/index.php) und gehen Sie in den Bereich "Datenbank". Am Fuß der Seite finden Sie eine Liste mit den notwendigen Datenbanktabellen und den aktuellen Status. Klicken Sie auf "Tabelle installieren", um die entsprechende Tabelle einzurichten.
Wenn Sie alle Daten eingetragen und die aktualisierten Dateien auf den Server kopiert haben, können Sie die Datenbank-Tabellen installieren. Sie erhalten beim ersten Aufruf des Gästebuch automatisch die Installationsseite. Klicken Sie auf den grünen Submit-Button. Nach erfolgreicher Installation wird das (noch leere) Gästebuch angezeigt.
Die Formularfelder werden in der Datei "form_config.php" in der folgenden Form konfiguriert.
$new_form_fields[] = array( 'name' => 'name', 'label' => 'Name', 'type' => 'text', 'required' => 'yes', 'value' => '' );
Jedes Formularfeld wird durch ein solches Element ($new_form_fields[]) definiert und enthält bestimmte Unterelemente:
Zusätzlich zu den vom Script vorgegebenen Optionen können Sie jedem Formularfeld-Element weitere Optionen hinzufügen. Diese werden dann automatisch in das Formularfeld eingefügt. Mögliche Optionen wären zum Beispiel: maxlength, size, cols, rows, selected, checked. Aber auch CSS-Inhalte können Sie angeben: class, style.
Beispiel:
$new_form_fields[] = array( 'name' => 'comment', 'label' => 'Kommentar', 'type' => 'textarea', 'required' => 'yes', 'value' => '', 'cols' => '20', 'rows' => '10', 'style' => 'padding:5px;' );
Hier wurde ein mehrzeiliges Textfeld ('type' => 'textarea') mit dem internen Namen "comment" ('name' => 'comment') definiert. In der HTML-Seite erscheint hingegen die Bezeichnung "Kommentar" ('label' => 'Kommentar'). Außerdem ist dieses Feld ein Pflichtfeld ('required' => 'yes') - Der Benutzer muss das Feld ausfüllen, um einen Eintrag im Gästebuch zu schreiben. Es ist kein Wert (Inhalt) für das Feld voreingestellt ('value' => ''). Das Textfeld wurde mit einer Breite von 20 Spalten ('cols' => '20') und einer Höhe von 10 Zeilen ('rows' => '10') definiert. Darüber hinaus erhält es noch einen Randabstand von 5 Pixel per CSS-Definition ('style' => 'padding:5px;').
Zur Veranschaulichung der Konfiguration der verschiedenen Formularfelder wurden in der Datei "form_config_example.php" alle möglichen Formularfeldtypen definiert. Sie können das Beispiel-Formular mit der Datei "sign_example.php" aufrufen. Das zugehörige HTML-Template ist "form_detail_example.tpl.html".
Wie die Formularfelder im HTML-Template eingetragen werden, können Sie anhand des Template "form_detail.tpl.html" nachvollziehen.
Durch die Formularfeld-Definition erhalten Sie automatisch zwei Platzhalter: {label:...} und {field:...}. Die Punkte sind jeweils durch den Namen des Formularfeldes zu ersetzen, z.B.: {label:name} und {field:name} oder {label:comment} und {field:comment}.
Der Platzhalter {label:...} enthält die Bezeichnung des Formularfeldes, die der Benutzer sehen soll. Der Platzhalter {field:...} enthält den HTML-Code des Formularfeldes selbst, z.B.: <input type="text" name="name" value=" " size="30" style="width:350px;" />
Die Namen der Formularfelder tauchen in Form von Platzhaltern ({name} oder {comment}) auch im Template "entry_detail.tpl.html" auf. Innerhalb des LOOP-Blocks <LOOP NAME="guestbook_entries"> werden sie durch die Werte aus der Datenbank ersetzt.
Mit Hilfe von HTML und CSS können Sie die Templates, die sich im Verzeichnis "/templates/.../" befinden, komplett Ihren Wünschen anpassen. Die bereits bestehenden Unterverzeichnisse "default" und "simple" können als Vorschläge betrachtet werden, wie Sie Ihr Gästebuch gestalten können.
Sollten Sie für die Anpassung WYSIWYG-Editoren wie Adobe GoLive, Macromedia Dreamweaver, MS Frontpage oder NetObjects Fusion verwenden, achten Sie bitte darauf, dass die Software keine eigenmächtigen Veränderungen vornimmt. Die Funktionsweise des Scripts könnte dadurch beeinträchtigt werden.
In den Templates befinden sich Markierungen/Platzhalter in geschweiften Klammern, wie zum Beispiel {txt_next_page}. Die werden beim Aufruf des Scripts durch die entsprechenden Wörter ersetzt. Diese Wörter finden Sie in der Datei "languages/language.de.inc.php". Natürlich können Sie diese Wörter auch ändern oder an eine andere Position innerhalb des Templates verschieben. Es spricht auch nichts dagegen, wenn Sie die Markierungen durch richtige Wörter ersetzen. Ebenso können Sie die Sprachdatei nach dem vorgegebenen Muster erweitern.
Neben den Platzhaltern für die Wörter existieren die so genannten Loops. Ähnlich wie HTML-Tags gehört immer ein Paar zusammen und darf auch nicht getrennt werden (<LOOP ...>...</LOOP>). Sie haben aber die Möglichkeit, die Position des gesamten Blocks zu verändern sowie den HTML-Code innerhalb des Blocks anzupassen.
Des weiteren gibt es IF-Blöcke. Diese dienen dazu, bei bestimmten Bedingungen Teile des HTML-Codes ein- oder auszublenden. Die IF-Blöcke sind genauso wie die Loop-Blöcke zu handhaben.
main_layout.tpl.html
Diese Datei kann Layout-Elemente enthalten, die für alle Seiten gelten. Dabei übernehmen alle Seiten des Gästebuchs automatisch das Layout, dass Sie in dieser Datei festlegen. Sie können diese Datei auch leer lassen und das Layout in den anderen Templates festlegen.
Die Datei enthält den speziellen Platzhalter {main_content}. Dieser Platzhalter wird vom Script automatisch durch den Inhalt der einzelnen Detail-Templates ersetzt. Der Platzhalter darf unter keinen Umständen gelöscht werden. Auch nicht, wenn Sie die Datei ansonsten leer lassen möchten.
Das Haupt-Template enthält außerdem den Platzhalter {txt_title} im Title-Tag (). Dieser Platzhalter wird in der Datei "config.php" in der Variable $add_text definiert. Dort wiederum wir die Variable $script_title verwendet. Diese Variable können Sie in den einzelnen PHP-Dateien (index.php, delete.php, edit.php, login.php, sign.php) definiert werden. Tragen Sie in diesen Dateien einfach den von Ihnen gewünschten Seitentitel ein.
entries.tpl.html
Diese Datei ist für das Layout der Seite für die Gästebucheinträge zuständig. Sie enthält folgende Elemente:
<IF NAME="logged_in">
Wenn der Administrator eingeloggt ist, wird hier der Link zum Ausloggen angezeigt.
{txt_entries} {txt_page} {currentpage} {txt_page_of} {allpages}
Diese Platzhalter enthalten Information über die Gesamtzahl der Gästebuchseiten und die Nummer der aktuellen Seite.
<IF NAME="previous_result_page">
Dieser IF-Block enthält Links zur Navigation. {txt_first_page} linkt zur ersten Seite der Ergebnisse. {txt_previous_page} linkt zur vorhergehenden Ergebnisseite.
<IF NAME="page_link_start"> <IF NAME="page_link_end">
Wenn Sie die Anzahl der Direktlinks auf die einzelnen Gästebuchseiten auf eine bestimmte Zahl beschränkt haben, wird am Anfang und/oder Ende der Linkliste der Inhalt dieser IF-Blöcke eingeblendet.
<LOOP NAME="page_direct">
Innerhalb dieses Loop-Blocks werden die Direkt-Links zu den einzelnen Gästebuchseiten angezeigt. Sie erhalten eine Link-Liste bestehend aus Zahlen (1 2 3 4 5 6 7 8 9 ...).
<IF NAME="next_result_page">
Dieser IF-Block enthält Links zur Navigation. {txt_last_page} linkt zur letzten Seite der Ergebnisse. {txt_next_page} linkt zur nächsten Ergebnisseite.
{entry_detail}
Das eigentliche Layout der Gästebucheinträge ist in der Datei "entry_detail.tpl.html" enthalten.
entry_detail.tpl.html
<LOOP NAME="guestbook_entries">
Innerhalb dieses Loop-Blocks tauchen die Namen der Formularfelder in Form von Platzhaltern (z.B.: {name} oder {comment}) auf. Sie werden durch die Werte aus der Datenbank ersetzt.
Das Script erstellt automatisch Variablen, die den modifizierten Inhalt der Gästebucheinträge enthalten. Folgende Änderungen werden vorgenommen:
Anstelle des einfachen Platzhalters müssen Sie einen erweiterten Platzhalter nach folgendem Muster verwenden:
{modified:...}
Aus dem Feld {comment} würde das Feld {modified:comment} werden.
sign.tpl.html
edit.tpl.html
<LOOP NAME="message">
Dieser Loop-Block dient der Anzeige von Hinweisen und Fehlermeldungen, z.B. wenn ein Pflichtfeld nicht ausgefüllt wurde.
{form_detail}
Dieser Platzhalter wird vom Script automatisch durch das Formular-Template "form_detail.tpl.html" ersetzt.
form_detail.tpl.html
Durch die Formularfeld-Definition erhalten Sie automatisch zwei Platzhalter: {label:...} und {field:...}. Die Punkte sind jeweils durch den Namen des Formularfeldes zu ersetzen, z.B.: {label:name} und {field:name} oder {label:comment} und {field:comment}.
Der Platzhalter {label:...} enthält die Bezeichnung des Formularfelds, die der Benutzer sehen soll. Der Platzhalter {field:...} enhält den HTML-Code des Formularfeldes selbst, z.B.: <input type="text" name="name" value=" " size="30" style="width:350px;" />.
{emoticon_matrix}
An dieser Stelle wird die Liste der verfügbaren Emoticons (Smilies) angezeigt. Wenn Sie keine Emoticons anbieten möchten, löschen Sie einfach diesen Platzhalter.
Antworten auf Ihre Fragen und Lösungen für Probleme mit dem Script finden Sie in unserem Support-Forum.
Das Formmail-Script können Sie kostenlos nutzen. Wenn Sie das Script ohne Hinweis und Link auf STADTAUS.com betreiben möchten, können Sie die Vollversion online erwerben.
Kontakt: http://www.stadtaus.com/
Weitere Scripts auf STADTAUS.com:
Besuchen Sie unser neuestes Projekt MetaCollection. Die Seite ist ein Verzeichnis deutscher und internationaler Script-Archive.