xwolf.de|com

Menü

Inhalt dieser Site

Ansicht

Individuelle Benutzerkonfiguration für die Site.

Druckansicht Startseite Suchen

A A A A

Guestbook (1)

Das Gästebuch ist auf den ersten Blick nur noch eins, der bereits im Netz angebotenen Gästebüchern. Aber es kann mehr. Mit diesem Skript ist es möglich, mehrere Bücher gleichzeitig zu verwalten. Zusätzlich sind die Benutzer in der Lage das Design ihres Buches relativ frei zu gestalten. Man ist nicht auf eine bestimmte Form angewiesen, wie sie von anderen bekannten Skripten vorgegeben wird.

Ein weiterer Vorteile dieses Skripts ist, daß der Benutzer in der Lage ist zwischen 2 verschiedenen Eingabeformen zu wählen: Der eigenen Form, oder einer, die das Skript ermöglicht. Außerdem besitzt das Skript eine Preview-Funktion.

Alles was das Gästebuch benötigt sind 2 Dateien, wovon die eine die Datenfile ist, in der alle Einträge geschrieben werden, und das andere eine Datei, in der die Benutzereigenen Einstellungen stehen.
Der Benutzer ist in der Lage, alles seinen Wünschen anzupassen. Sowohl Hintergrundbilder, Trennzeilen, Texte wie auch Counter usw.

Source Code

Perl Sourcecode
guestbook.pl Das Hauptprogramm
cgi-library.pl Library zum Programm
Konfigurations- und Styledateien
guestbook.var Standardeinstellungen eines Gästebuches.
 

Wirkungsweise

Hinweis: Laut der Entscheidung des Landgerichts Trier vom 16.05.2002 ist ein Betreiber eines Gästebuches verpflichtet, dieses regelmäßig auf rechtswidrige Eintragungen zu überprüfen.
Bei einer rein privat betriebenen Webseite reiche, nach Meinung des Gerichts, eine wöchentliche Überprüfung.
Als alleiniger Betreiber dieser Website, der mehrere Hundert E-Mails pro Tag bekommt und einen Haufen an Arbeit hat und durch die Bannerschaltung nicht mehr privat ist, kann ich mir eine so häufige Überprüfung eines Beispielgästebuches weder zeitlich, noch finanziell (bei Vertretung) leisten.
Aus diesem Grund war ich gezwungen das Testgästebuch abzuschalten.

Aufruf

Der Aufruf des Programmes erfolgt durch die Angabe seiner Location auf dem Verzeichniss:
http://www.example.org/cgi-bin/guestbook.pl (bzw. die Location, in der die Files ablegt sind.)
und der Angabe zweier Parameter:

Die Einstellungen

Dies sind die Einstellungen der Variablendatei: (Kopie meiner eigenen Datei)

# After this point the parameters are starting.
bodytag==
# Here you can define the background of the page. An URL-address. 
titel==Beispiel Gästebuch (1)
# The title of the guestbook.
top==
# What you want to see above the title. Maybe an icon...
pre_text==Hier können Sie die vorhandenen Nachrichten lesen und auch
entry_ask==eigene Einträge schreiben.
past_text==Bitte beachten Sie aber, daß dies nur ein Beispiel-Gästebuch ist. Diskussionen auf diesem Gästebuch werden nicht verfolgt oder beantwortet.
# This is the message, which is displayed above the guestbook-data.
# entry_ask is the text, with the link to the input of new entries, why pre_text
# and past_text are surrounding this field.
bottom==
Zurück zur Beschreibung des Gästebuches # What you want to see at the end of the page. book==guestbook1.dat # The file of the guestbook-entries. Must be (chmod a=rw) forbit_html==0 # If set to 1 , no html-tags are allowed. Else set 0. counter==0 # 1 makes the counter on, 0 off, 2 sets the improved counter on allow_home==1 # If 1 , the user can give his homepage too, else 0 language==english # You can set it to 'english' or to 'german' seperator==
# How you want to part different messages...

or


need_mail==0 # If the author is forced to give his email-address answer_mail==0 # If an mail will send to the author after his entry. Not yet ready add_beginning==1 # If 1 is set the new entry will be insert at the top of the document italic==1 # 1 or 0. If 'on' the input will be displayed italic. ACCESS==751 # The number of the accesses to this page. Will add 1 only if its # a read-call. tempfile1==guestbook.tmp1 tempfile2==guestbook.tmp2 # These both files are for internal use. If you don't set them, the # default files will be used, which may be used also by many other users. # This could lead to the problem, that messages of other books will be saved # on your board, or messages will go lost before saved. # Script was made by Wolfgang Wiese, xwolf@xwolf.de

Sie können ruhig einige dieser Parameter weglassen, mit Ausnahme von titel, book, counter, language, counter und ACCESS. Alle anderen werden dann auf default-Werte gesetzt. Sie sollten dann jedoch den Counter auf 1 stellen, da dann die Variablendatei neu geschrieben wird und alle default-Parameter eingetragen werden. Danach können die Parameter jederzeit wieder geändert werden.
Diese Vorgehensweise ist etwas komfortabler.

Achtung!

Da die Einträge in einer Datei auf Ihrem Verzeichniss geschrieben werden sollten, müssen Sie diese schreib- und lesbar machen: CHMOD a=rw (Dateiname). dasselbe gilt fuer die Variablendatei. Bei dem ersten Aufruf des Programmes sollte die Datei, in der die Einträge geschrieben werden, leer sein!
Benötigt werden folgende Dateien:

Installation

Ändern Sie folgende Zeilen entsprechend Ihrer Server-Einstellungen ab:

Zeile 1 #!/local/bin/perl5
Tragen Sie hier Ihren Pfad zu Perl ein.
Zeile 22 require "cgi-library.pl";
Tragen Sie hier den vollen Pfad zu der cgi-library.pl ein, wenn diese Datei sich nicht im selben Verzeichnis wie das Skript befindet. Installationsanleitung zur cgi-library.pl finden Sie auf http://cgi.xwolf.de/lib/cgi-library.shtml
Zeile 27 $guestbook_log ='guestbooks.dat';
Geben Sie hier ein default-Pfad an, wo nach der Log-Datei gesucht wird, in der alle Gästebücher auf dem Server ihre Status-Meldungen schreiben.
Zeile 28 $guestbook_helppage='http://cgi.xwolf.de/cgi/guestbook.shtml';
Hier steht die URL zu einer Seite, in der die Bedienung des Gästebuches beschrieben wird. Diese wird angegeben, wenn das Skript mit falschen Parametern aufgerufen wurde.
Zeile 27 $progurl = 'http://cgi.xwolf.de/cgilocal/guestbook1/guestbook.pl';
Geben Sie hier die komplette URL an, mit der das Gästebuch addressiert werden kann.
Zeile 30 und 31 $tempfile = 'guestbook.tmp1';
Diese Dateien sind für den internen Gebrauch.
Zeile 32 $mailprog = '/usr/lib/sendmail';
Hier müßen Sie den kompletten Pfad zum UNIX-Programm sendmail angeben.

Anmerkung

Es ist möglich eine eigene Eingabemaske für neue Einträge zu machen, und diesem die Parameter über POST an das Programm zu übergeben. In diesem Fall muss man rw=save setzen. Variablennamen sind dann: name, email, homepage, text.
Ich denke allerdings nicht, dass dies nötig ist. Man sollte es den Cracks überlassen, die gerade nichts zu tun haben...
Falls man einen bedeutenden Fehler gemacht hat, wird das Programm diesen abfangen und melden.

Wird der Counter benutzt, wird die Variablenfile von Programm neu geschrieben, da in dieser Datei der Counter die Zahl der Aufrufe schreibt. Die anderen Variablen werden davon aber inhaltlich nicht betroffen sein. Gegebenenfalls ändert sich derren Anordnung in der Datei. Zeilen, die mit einem '#' beginnen, bzw. die keinen Wert besitzen, der vom Programm genutzt wird, werden ignoriert.
Werden Parameter weggelassen, werden default-Werte gesetzt. Sollte u.a. der 'Kopf' weggelassen werden, werden die FAU-Buttons gesetzt.

Info

$Id: guestbook.shtml,v 1.4 2003/05/23 12:22:16 xwolf Exp $, Linkcount: 1
© 1996 - 2003 by xwolf