-- PPOLL 2.02 --
Inhaltsverzeichniss
  1. Lizenzbedingungen
  2. Vorraussetzungen
  3. Installation / Setup
  4. Einbinden auf der Homepage
  5. Anpassung ans eigene Design
  6. Administration
  7. Support
  8. Versionshistorie
Lizenzbedingungen
Vorraussetzungen

Um das Script betreiben zu können sind folgende Mindestanforderungen zu erfüllen:

Leider ist es momentan nicht möglich das Script auf einen IIS einzusetzen, da dieser einen Fehler bei der gleichzeitigen Verarbeitung von Cookies und Header Informationen hat.

Installation / Setup

Erstellen sie auf ihren Webserver ein beliebiges Verzeichnis in den sie das Poll Script betreiben wollen.
Entpacken sie alle Dateien aus der .zip Datei und übertragen diese mit ihrem FTP Programm in dieses Verzeichnis auf den Webserver. Stellen Sie sicher das die Bilder (.gif) im Binärmodus übertragen werden. Bei Webservern auf Linux Basis achten sie auf die korrekte GROSS/kleinschreibung der Files.

In der Datei config.inc.php finden sie alle relevanten Parameter um das Script an ihre mySQL Datenbank anzubinden und einzustellen. Beachten sie das alle Werte in "" eingeschlossen sind und am Ende der der Zeile ein Semikolon steht: ;

$database Der Name ihrer Datenbank auf dem mySQL Server
$sqlhost Der Hostname auf dem die mySQL Datenbank läuft. Meistens : "localhost"
$sqluser Der Username für die Datenbank
$sqlpass Das Passwort für die Datenbank. Keine Angst sieht der Besucher der News-Seite nicht !

Nach der Anpassung der Parameter $database, $sqlhost, $sqluser und $sqlpass haben sie bereits Zugang zur Datenbank. Die benötigten Tabellen für das Script erstellen sie dann automatisch mit dem Script ppoll_createdb.php. Beim Aufruf werden die Tabellen erstellt sowie der Admin Account zur Verwaltung angelegt.
Die Tabellennamen müssen nicht geändert werden. Diese geben aber die Möglichkeit auf einer Datenbank 2 verschiedene Scripte zu installieren indem man die Tabellennamen einfach entsprechend ändert.
$time_offset gibt den Zeitunterschied des Scriptes zur Serverzeit an. Somit kann man das Script genau an eine Zeitzone anpassen. Der Wert gibt den Unterschied in Sekunden an. +3600 steht für +1 Stunde, -3600 steht für -1 Stunde.

$notifyemail ermöglich es bei Einsatz von Usern als "Writer" eine Email auszulösen wenn eine Poll gepostet wird der freigeschalten werden muss. Hier können auch mehrere Adressen durch Komma getrennt angegeben werden ! Diese Notification kann auch an ICQ gesendet werden wenn man als Adresse "ICQ#@pager.icq.com" angibt ! Möchten sie keine Notification bekommen stellen sie $notify="", ein !

Windows / IIS : Da der Internet Information Server einen Bug hat welcher verhindert das man nicht gleichzeitig einen Header senden kann und ein Cookie speichern, gibt es am Ende der Datei "vote.php"  zwei unterschiedliche Abschnitte. Abschnitt 1 für Apache , Abschnitt 2 für IIS. Standardmäßig ist der Abschnitt für Apache aktiv. Der Bereich zwischen /* und */ ist auskommentiert und wird nicht genutzt. Wenn sie als Server einen IIS benutzen kommentieren sie den Apache Abschnitt aus und entfernen die /* und */ Zeichen aus dem Windows IIS Abschnitt.

Einbinden auf die Homepage

Um einen Poll auf der Homepage einzubinden gibt es das File poll.php. Dieses File arbeitet selbsttändig, und bindet immer den neusten offenen Poll ein. Hat ein User noch nicht gevoted wird die Auswahl zum Voten angezeigt. Sobald der User gevotet hat zeigt dieses Script die Ergebnisse an. In der Datei poll.php ist mit Angabe des Serverpfades auf die config.inc.php zu verweisen, damit auf die Datenbank zugegriffen werden kann.

Das File kann in eine PHP Page mittels require oder include eingebunden werden: require("/pfad/zu/poll.php");
Immer den vollen Server-Pfad verwenden ! Ein Include in der Art include("http://...."); funktioniert zwar, aber erlaubt keine Speicherung/Auslesen von Cookie's. Somit werden keine Ergebnisse angezeigt !

Ebenfalls ist es möglich das File in eine SHTML Datei zu includen oder in einen IFRAME zu setzen.

Anpassung ans eigene Design

Für einen richtigen HTML Kopf mit den üblichen Angaben im <body> für Hintergrundfarben, Hintergrundbild etc. steht ihnen die Datei kopf.php zur Verfügung. Diese Datei enthält übliches HTML und ist hauptverantwortlich für das Design. Sie befindet sich immer am Anfang ihrer Gästebuchseiten.

Dort können sie einen Link zu einer CSS Datei setzen 
Beispiel: <link rel="stylesheet" type="text/css" href="/pfad/zur/default.css">

In dieser CSS Datei lassen sich neben den üblichen Werten folgende Sonderklassen definieren:

th.head / td.head - Kopfzeilen
td.info - Infofelder
td.left - Linke Spalten
td.right - Rechte Spalten
td.header - Kopf und Fusszeilen
td.odd - Zebramuster Zellenfarbe 1
td.even - Zebramuster Zellenfarbe 2

Administration

Adminuser haben die Möglichkeit Benutzer anzulegen die dann als Moderator alle Polls betreuen können oder als Autor eigene posten können und nur diese eigenen bearbeiten / löschen dürfen. 
User mit Level "Writer" haben die Möglichkeit Polls zu posten, diese werden aber nicht sofort in den öffentlichen Polls angezeigt. Diese Plolls können von einen Admin oder Moderator freigegeben werden. Erst dann erscheinen sie öffentlich. Alle nicht freigegebenen Polls werden im Adminbereich solange mit NEW gekennzeichnet bis sie freigegeben sind.
User mit Status gesperrt haben keinen Zugang mehr zu den Posting Funktionen.

Administratoren und Moderatoren haben ebenso die Möglichkeit Polls zu sperren und zu entsperren. Diese Polls werden dann öffentlich nicht angezeigt.

Support

Support für das Script erhalten sie nur im Forum auf http://www.powie.de . Bitte stellen sie keine Anfragen via Email, da ich bei der Menge an Anfragen nicht garantieren kann diese schnell zu beantworten.

Versionshistorie

So hat sich Powie's PHP Poll über die Zeit hinweg entwickelt:

Version Released Änderungen
2.02 22.01.2002
  • PFUSER Datenbank
  • Frame zu dem gevotet wird kann eingestellt werden
2.01 14.11.2002 Zwischenrelease
2.00 07.09.2002
  • P_USER Datenbank
1.02 23.07.2002
  • Bugfixes, kleinere Anpassungen
1.01 02.01.2002
  • IP Blocking
  • Komplettes Design über CSS möglich
  • Einbindungsprobleme poll.php behoben
1.00 27.09.01
  • Polls können gezeitet werden (Datum/Uhrzeit, Anzahl Stimmen)
  • Viele kleine Bereinigungen / Fehlerkorrekturen
0.91 beta 15.09.01
  • Cookiename kann angegeben werden, ermöglicht somit das Script mehrmals auf einen Server einsetzen zu können.
0.90 beta Sep. 2001
  • Erste Version zum Test