Dokumentation Voting-Script

Vielen Dank für Ihr Interesse an unserem Voting Script. Wir empfehlen Ihnen, sich Zeit für die Lektüre dieser Anleitung zu nehmen.

Einleitung

Das Script ist für den sofortigen Einsatz konfiguriert und eingerichtet. Nachdem Sie das Script auf den Server kopiert 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 zu testen. Sie behalten dadurch den Überblick, welche Änderung einen eventuell auftretenden Fehler verursacht hat.

Beachten Sie bitte auch, dass das Verzeichnis "logfiles" Schreibrechte besitzen muss (chmod 777). Dasselbe gilt für alle darin befindlichen Dateien.

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" />).

Funktionsweise des Scripts

Mit diesem Script können Sie Umfragen und Abstimmungen auf Ihrer Website einrichten. Die Besucher können eine der Optionen auswählen und durch einen Klick auf den Submit-Button abstimmen. Die Umfrageergebnisse werden in einem Balkendiagramm angezeigt. Sie können die Optionen als Radio-Button mit Text oder Bildern und als Select-Menü anzeigen lassen.

Zum Einschränken und Vermeiden von Manipulationen arbeitet das Script mit der IP-Adresse des Besuchers und/ oder mit Cookies. Damit soll sicher gestellt werden, dass der Besucher nur einmal abstimmen kann. Beachten Sie aber, dass dies keine 100%-igen Lösungen sind. Mit entsprechendem Aufwand lassen sich diese Sicherheitsvorkehrungen umgehen.

Funktionen auf einen Blick

Nach oben

Konfiguration des Scripts

Die Datei "index.php" stellt die Konfigurationsdatei für das Script dar. Sie haben dadurch die Möglichkeit, die Datei zu duplizieren und mit anderen Konfigurationen aufzurufen und zu betreiben, trotzdem aber den selben Script-Kern zu nutzen. Dadurch brauchen Sie das Script nur einmal zu installieren und bei Bedarf nur einmal zu lizenzieren.

Zusätzlich zu der Datei "index.php" wurde zu Demonstrationszwecken die Datei "voting_image_options.php" eingerichtet. Bei dieser Abstimmung wurden anstatt von Text-Optionen Bild-Pfade angegeben. Anstatt zwischen verschiedenen Text-Optionen können die Besucher zwischen verschiedenen Bildern auswählen. Außerdem wurde ein anderer eindeutiger Name ($intern_vote_name) für die Abstimmung angegeben und als Feld-Typ ($form_field_type) wurde "radio_image".

Folgende Variablen können editiert werden:

$vote_title     Sie können für jede Abstimmung einen eigenen Titel angeben. Der wird im <title> Tag und als Überschrift angezeigt. Beispiel:

$vote_title = 'Lieblingsfarbe';

$vote_text     Analog zum Titel einer Abstimmung können Sie einen Text (z.B. eine Frage oder Beschreibung) eintragen. Beispiel:

$vote_text = 'Was ist Ihre Lieblingsfarbe?';

$vote_option[]     In dieser Variable können Sie die Auswahlpunkte (Optionen) eintragen, zwischen denen der Benutzer auswählen können soll. Dabei wird für jede Auswahlmöglichkeit eine eigene Variable festgelegt. Beispiel:

$vote_option[] = 'Rot';
$vote_option[] = 'Grün';
$vote_option[] = 'Blau';


Anstatt von Text können Sie Grafiken als Optionen einrichten. Beispiel:

$vote_option[] = './templates/smilies/1.gif'; $vote_option[] = './templates/smilies/2.gif'; $vote_option[] = './templates/smilies/3.gif';

Zusätzlich zu den Pfaden müssen Sie als Feld-Typ ($form_field_type) "radio_image" angeben.

$intern_vote_name     Hier muss ein Name für die Abstimmung eingetragen werden, der intern durch das Script verwendet wird. Vermeiden Sie bitte Leer- und Sonderzeichen. Der interne Name für die Abstimmung muss angegeben werden, weil das Script für alle Abstimmungen mit einer einzigen Log-Datei arbeitet. Um die einzelnen Abstimmungen von einander unterscheiden zu können, muss der interne Abstimmungsname einzigartig sein. Beispiel:

$intern_vote_name = 'lieblings_farbe';

$form_field_type     Sie haben die Möglichkeit, zwei verschiedene Arten von Auswahlmenüs anzeigen zu lassen. Um eine Liste von Radio-Buttons zu erhalten, geben Sie bitte "radio" in die Variable ein. Beispiel:

$form_field_type = 'radio';

Ergebnis:  Text

Anstatt von Text neben den Radio-Buttons können Sie auch Grafiken anzeigen lassen. Tragen Sie dazu "radio_image" als Feld-Typ ein. Beispiel:

$form_field_type = 'radio_image';

Ergebnis:  

Sie können auch ein Select-Menü anzeigen lassen. Geben Sie dazu bitte "select" an. Beispiel:

$form_field_type = 'select';

Ergebnis:

$bar_image_name     Bei Anzeige der Umfrageergebnisse wird zur Veranschaulichung der Verteilung neben jeder Option ein grafischer Balken angezeigt. Tragen Sie in diese Variable den Namen der Grafik ein, die verwendet werden soll. Alle verfügbaren Balkengrafiken sind im Verzeichnis "templates/images_voting" enthalten. Beispiel:

$bar_image_name = 'black.gif';

Sie können auch eigene Balkengrafiken erstellen und in dem oben genannten Verzeichnis ablegen.

$max_bar_width     Der Wert dieser Variable wird als maximale Breite (in Pixel) des höchsten Wertes bei der Abstimmung verwendet. Abhängig von dieser Breite berechnet sich automatisch die Breite der anderen Ergebnisse. Sie können die Balkenbreite frei festlegen und von Ihrem Layout und dem verfügbaren Platz abhängig machen.

$check_ip_address     Mit dieser Option können Sie festlegen, ob ein Besucher mehrmals oder nur einmal abstimmen kann. Wenn Sie die Variable auf "yes" stellen, wird die IP-Adresse des Besuchers automatisch ausgelesen. Das Script prüft dann, ob ein Besucher mit der gleichen IP-Adresse bereits an der Umfrage teilgenommen hat. Sollte das der Fall sein, kann der Besucher nicht mehr abstimmen.

$check_cookie     Mit dieser Option können Sie ebenfalls bestimmen, ob ein Besucher mehrmals oder nur einmal abstimmen darf. Wenn Sie die Variable auf "yes" stellen, wird nach dem Abstimmen ein Cookie auf dem Rechner des Besuchers geschrieben und beim Aufruf der Umfrage automatisch ausgelesen. Das Script prüft dann anhand des Cookies, ob der Benutzer bereits an der Abstimmung teilgenommen hat. Sollte das der Fall sein, kann der Besucher nicht mehr abstimmen.

$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).

$path['templates']     Diese Variable enthält den Pfad zum Verzeichnis mit den HTML-Templates.

$path['logfiles']     Diese Variable enthält den Pfad zum Verzeichnis, in dem sich die Log-Dateien befinden. Stellen Sie sicher, dass das Verzeichnis Schreibrechte besitzt (chmod 777).

$tmpl['layout']     Diese Variable enthält den Datei-Namen des HTML-Templates, das zuständig für das Layout der Seiten ist.

$log['logfile']     Diese Variable enthält den Namen der Log-Datei. Stellen Sie sicher, dass die Datei Schreibrechte besitzt (chmod 777).

$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 aber das System funktioniert, können Sie die Ausgabe der Meldungen abschalten. So verwehren Sie allzu neugierigen Besuchern den Einblick in das System.

$add_text     Sie können weitere Werte, Text, Variablen oder andere Inhalte an dieser Stelle festlegen. Diese Inhalte können Sie dann mit Hilfe von entsprechenden Markierungen in geschweiften Klammern in die Templates übertragen.

Wenn Sie eigene Werte in der Variable $add_text hinzufügen folgen Sie bitte dem Muster, dass 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 (_).

   

Nach oben

Dateien auf den Webserver kopieren - Upload

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 hoch zu laden):

/voting_script/
/voting_script/inc/
/voting_script/languages/
/voting_script/logfiles/
/voting_script/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.

Achten Sie bitte darauf, dass sich im Verzeichnis "templates" ein Verzeichnis mit Bilddateien darin befindet.

Nach oben

Die Log-Datei - logfiles/log.txt

Das Verzeichnis "logfiles" und die Datei "log.txt" müssen das Dateiattribut 777 besitzen (chmod 777) - also schreibbar sein.

Nach oben

Einbinden des Voting Scripts

Sie haben mehrere Möglichkeiten das Script in Ihre bestehende Website einzubinden.

Direkt verlinken

Sie können das Voting Script direkt verlinken und wie eine eigene Seite innerhalb Ihrer Website behandeln. Dazu können Sie auch das HTML-Template komplett an das Layout Ihrer Website anpassen.

I-Frame (HTML)

Mit Hilfe des HTML <iframe> Tags können Sie das Script in eine bestehende Seite einbinden. Fügen Sie dazu an der entsprechenden Stelle den <iframe> Tag ein. Beispiel:

<iframe name="voting" src="./voting.php" width="400" height="300" frameborder="0"></iframe>

SSI Include

Wenn Ihr Server SSI (Server Side Includes) unterstützt, können Sie das Script mit folgender Zeile SSI-Code einbinden:

<!--#include virtual="./voting.php?$QUERY_STRING" -->

Ersetzen Sie "./voting.php" durch den korrekten Pfad zu Ihrem Script. Wichtig ist, dass als Parameter "?$QUERY_STRING" an das Script übergeben wird.

Sollte das Einbinden auf diese Weise nicht funktionieren, benennen Sie bitte die HTML-Seite in .shtml um. Fragen Sie bitte auch bei Ihrem Webspace-Provider nach, ob SSI unterstützt wird.

Wichtig: Damit nach dem Abstimmen wieder die Ausgangsseite angezeigt wird - also die Seite, in die das Script eingebunden wurde - muss ein Hidden-Formularfeld in das HTML-Template "templates/voting.tpl.html" eingefügt werden:

<input type="hidden" name="vote_redirect" value="http://www.your-server.com/seite.shtml" />

Die Zeile muss direkt unterhalb des Form-Tags stehen:

<form name="vote" action="{script_self}" method="post">
  <input type="hidden" name="vote_redirect" value="http://www.your-server.com/seite.shtml" />

Ersetzen Sie bitte "http://www.your-server.com/seite.shtml" durch den URL zu Ihrer Seite.

PHP Include

Sie können das Script auch in eine bestehende PHP-Datei einbinden. Nutzen Sie dazu die include() Anweisung von PHP:

<?php

include('./voting.php');

?>

Ersetzen Sie "./voting.php" durch den korrekten Pfad zu Ihrem Script.

Nach oben

Anpassung der HTML-Templates

Mit Hilfe von HTML und CSS können Sie die Templates, die sich im Verzeichnis "/templates/" befinden, komplett Ihren Wünschen anpassen.

Sollten Sie für die Anpassung WYSIWYG-Editoren wie Dreamweaver, Frontpage oder NetObjects 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_script_name}. 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.

Im Template, das für die Anzeige Bildern als Abstimmungsoptionen eingerichtet wurde (voting_image_options.tpl.html), enthält der LOOP-Block einen Image-Tag mit dem Platzhalter {label} als Dateipfad und -name.

Nach oben

Support

Antworten auf Ihre Fragen und Lösungen für Probleme mit dem Script finden Sie in unserem Support-Forum.

Nach oben

Nutzung und Lizenzierung

Sie können das Script kostenlos nutzen. Wenn Sie das Script ohne Hinweis auf STADTAUS.com im Download-Link betreiben möchten, können Sie die Vollversion online erwerben.

  1. Sie können die Script-Lizenz an Dritte verkaufen, auch als professioneller Reseller.
  2. Den Preis können Sie dabei selbst bestimmen.
  3. Die Script-Lizenz gilt für eine Installation des Scripts.

Weitere Scripts auf STADTAUS.com:

  1. Apotheken-Notdienstkalender
  2. Bildergalerie-Script
  3. Formmail-Script
  4. Tell-A-Friend-Script
  5. Online-Terminplaner
  6. Google-Tool
  7. Download Center Lite
  8. Gästebuch Script

Besuchen Sie unser Projekt MetaCollection. Die Seite ist ein Verzeichnis deutscher und internationaler Script-Archive.

http://www.metacollection.com/

Nach oben