|
Doppelklick
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-
guestbook.pl
guestbook.var
cgi-library.pl
Gesamter Source-Code in gepackter Form
Archiv aller Programme und Skripten
Wirkungsweise-
Auf dieser Seite finden Sie ein Beispielaufruf:
http://www.xwolf.com/cgilocal/guestbook.cgi?rw=read&varfile=/home2/xwolf/data/guestbook.var
Aufruf-
Der Aufruf des Programmes erfolgt durch die Angabe seiner Location auf dem Verzeichniss:
http://www.rrze.uni-erlangen.de/cgi-bin/webadm/guestbook/guestbook.pl (bzw. die Location, in der die Files ablegt sind.) und der Angabe zweier Parameter:
- rw=read/write - Mit rw=read werden alle Einträge des Gästebuches gelesen, mit rw=write kann ein neuer Eintrag gemacht werden.
- varfile=(filename) - Hier geben Sie ein Datei an, in der alle wichtigen Einstellungen Ihres Gästebuches stehen müssen. Siehe unten.
Die Einstellungen-
Dies sind die Einstellungen der Variablendatei: (Kopie meiner eigenen Datei)
- # After this point the parameters are starting.
- HTML_TOP==
- # Here you can set in the path of a html-file, which will be displayed before the gb
- HTML_BOT==
- # Here you can set in the path of a html-file, which will be displayed after the gb
- bodytag==background="http://www.rrze.uni-erlangen.de/~unrzc9/pictures/marble2.gif"
- # Here you can define the background of the page. An URL-address.
- titel==Gästebuch von Wolfgang Wiese
- # The title of the guestbook.
- top==<center><img src="http://www.rrze.uni-erlangen.de/~unrzc9/pictures/greenguy.gif"></center>
- # What you want to see above the title. Maybe an icon...
- pre_text==Here you can read all entries of the guestbook and
- entry_ask==make own entries.
- past_text==Have fun
- # 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==
- # What you want to see at the end of the page.
- book==/home2/xwolf/data/guestbook.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==1
- # 1 makes the counter on, 0 off. 2 switches also the hidecounter on. But
- # don't forget to create then the files $book.count and $book.ignore !!
- # You will need the program 'counterlog.pl' to make a html-statistic.
- allow_home==1
- # If 1 , the user can give his homepage too, else 0
- language==german
- # You can set it to 'english' or to 'german'
- seperator==<p>
- # How you want to part different messages...<p> or <hr> or Images
- 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
- # Makes the textes of the guests italic, if its set on 1.
- ACCESS==40
- # 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.
-
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:
- Eine Variablendatei. Siehe oben. Schreib- und lesbar.
- Eine (anfangs leere) Daten-Datei für die Einträge. Schreib- und lesbar.
- Sofern der Hidecounter benutzt wird 2 Dateien, welche den Namen der Daten-Datei plus der Endung '.count' bzw. '.ignore' bekommen. Die '.count'-Datei muss schreib- und lesbar sein, die '.ignore' nur lesbar.
Ausserdem muss eine lesbare Datei erstellt werden, welche gegebenenfalls den Namen
von logins enthält, welche die volle Host-information des Counters bekommen
sollen. Siehe hierzu auch: Der versteckte Counter (Zugriffszähler.
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 "/proj.stand/webbin/cgi-bin/webadm/cgi-library.pl";
Tragen Sie hier den vollen Pfad zu der cgi-library.pl ein. Installationsanleitung
zur cgi-library.pl finden Sie auf http://www.xwolf.com/lib/cgi-library.html
|
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://www.rrze.uni-erlangen.de/~unrzc9/cgi/guestbook/guestbook.html';
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://www.rrze.uni-erlangen.de/cgi-bin/webadm/guestbook/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.
Viel Spass bei der Nutzung des Gästebuches!
Beste Darstellung mit
|
Schlechteste Darstellung mit
|
|