Voting nur 1 mal pro Tag

maarian

Erfahrenes Mitglied
Hallo

also ich möchte das ein User nur einmal pro Tag auf ein Bild voten kann.

Also $vote = ja Voting anzeigen $vote = nein Voting ausblenden.

Funktioniert aber irgendwie nicht

Die Zeit steht so in der DB 10 09 2007 15:27:53
PHP:
$today = gmdate('Y m d');
$abfrage = "SELECT * FROM pictures_ WHERE bild_id ='".$_GET['id']."' AND votet_von ='".$user_info['username']."' AND votet LIKE '$today%' ";
$ergebnis = mysql_query($abfrage); 


if (mysql_num_rows($abfrage) == 1){
$vote = nein;
}
if (mysql_num_rows($abfrage) == 0){
$vote = ja;
}
 
Dazu müsstest du einen wiederkehrenden Besucher eindeutig identifizieren können, z. B. durch die IP (eher unsicher für die Identifizierung, aber immer noch üblich), Cookies oder einen userspezifischen Hash, generiert durch verschiedene Werte. Aber selbst dort gibt es oftmals Überschneidungen, gerade wenn die Webseite an eine spezielle Zielgruppe definiert wurde.

Benutzt du die IPs könntest du einfach alle speichern und sofern sie bereits drin ist, verbietest du den Vote.
 
hmm ne..

also vote können sowieso nur eingeloggte user kann man das nciht irgendwie mit der ezit machen so das die voting tabelle 1-10 nur dann angezeigt wird wenn der user nicht innerhalb der letzten 24 std gevotet hat
 
Halte dich bitte an die Netiquette und beachte Groß- und Kleinschreibung.

Und ja, das vereinfacht natürlich alles.
Wird denn auch gespeichert welcher User gevotet hat?

Falls ja, kannst du ja einfach testen, ob der Zeitpunkt schon 24h her ist (Die MySQL Funktion DATE_SUB() dürfte dir dabei hilfreich sein) und dann dementsprechend weiterarbeiten.
 
Ja nein die Bild ID wird gespeichert.

Kannst du mir nicht schnell weiterhelfen so gross dürfte der Code ja nicht sein, ich habe von den Zeiten in Php nicht sehr viel Ahnung
 
Du kannst auch ein Cookie erstellen mit Hilfe von:#
PHP:
<?php
    setcookie("Voting", "hat gevotet", time() + (60 * 60 *24);
?>
und dann mit
PHP:
<?php
    if(isset($_COOKIE["Voting"])) {
     ....
    }
?>
abfragen ob derjenige schon gevotet hat und wenn nicht die Voting Optionen anzeigen lassen
 
danke werde das mal probieren

EDIT: aber Ich kann doch nicht zu jedem Bild auf das man Votet nen Cookie stitzen meint Ihr das ist sinnvoll und wie trenne ich das ganze dann voneinander.
 
Zurück