Sven Rautenberg: Mehrfachvoting ausschließen

Beitrag lesen

Die IP find ich sicher irgendwie mit JavaScript heraus, aber wie kann ich diese dann für eine bestimmte Zeit sperren?

Garantiert _nicht_ mit Javascript, sondern mit PHP. Nur mit PHP eigentlich. Lass dir einfach mal die Informationen von phpinfo(INFO_VARIABLES); anzeigen, dann siehst du ein Reihe von $_SERVER-Einträgen (kann auch noch $HTTP_SERVER_VARS heißen) - irgendein Eintrag heißt REMOTE_ADDR: Das ist die IP des Benutzers.

Deine Aufgabe lautet, diese IP irgendwie zu speichern (zusammen mit der Uhrzeit des Speicherzeitpunktes oder schon gleich mit der Uhrzeit, wann die Sperre abläuft - also JETZT plus 5 Minuten oder so). Wenn ein neues Voting eintrifft, liest du die Liste der gesperrten IP-Adressen durch und vergleichst mit der aktuellen IP des Voters. Wenn du einen Eintrag gefunden hast, vergleichst du noch die Uhrzeiten (Ist die Sperre schon abgelaufen?), und erst wenn die IP nicht mehr gesperrt ist, nimmst du das Voting in deine Statistik auf.

Es schadet nichts, die mittlerweile abgelaufenen Sperreinträge regelmäßig zu löschen, da die Liste sonst immer länger wird.

- Sven Rautenberg