Sto lavorando su un sito web (html, css, javascript, ajax, php, mysql) e voglio limitare il numero di volte in cui un determinato utente vota per un determinato video.Sito Web. VoteUp o VoteDown Videos. Come limitare gli utenti a votare più volte?
È simile al sistema YouTube in cui è possibile votare o votare un video particolare.
Ogni voto comporta l'aggiunta di una riga alla tabella video.votes, che registra l'ora, la direzione di voto (su o giù), l'indirizzo IP del client (utilizzando PHP: $ ip = $ _SERVER ['REMOTE_ADDR'];), e ovviamente l'ID del video in questione.
L'aggiunta di voti è semplice come; (pseudocodice): Javascript: onClick (votazione (a, b, c, d)), che passa le variabili allo script di inserimento PHP tramite ajax e infine sostituiamo i pulsanti di voto con un messaggio "Grazie per votare".
IL PROBLEMA:
Se si ricarica/aggiorna la pagina dopo aver votato, si può votare di nuovo, e ancora, e ancora una volta, si ottiene il punto.
MIA DOMANDA:
Come si fa a limitare la quantità di volte che un determinato utente voto per un determinato video ??
MIEI PENSIERI:
Usi i cookie, e aggiungere un nuovo cookie con l'ID del video. E controlla la presenza di un cookie prima di inserire un nuovo voto.
O
Prima di inserire il voto, si usa l'IPaddress e la videoID per vedere se questo stesso utente (IP) ha votato per questa stessa video (vidID) nelle 24 ore precedenti (mktime), e consentire o non consentire l'inserimento del voto basato su questa query?
O
Non ti interessa? Prendiamo il presupposto che la maggior parte degli utenti sono sani di mente e hanno cose migliori da fare che aggiornare le pagine e votare più volte.
Qualsiasi suggerimento o idea benvenuto.
Sì, più elettori sono ciò che sto cercando di evitare, in quanto il proprietario di videoX potrebbe aumentare notevolmente la sua popolarità. Ill prob andare con un registro e login per votare o lasciare commenti sui video. Grazie mille ragazzi ... –
Che cosa hai intenzione di fare per impedire alla stessa persona di registrarsi più di una volta? – Pointy
@Pointy: anche Google, YouTube, Microsoft e eBay hanno problemi con questo. Usano ancora sistemi simili per le valutazioni (feedback per eBay). C'è ben poco che puoi fare per fermare un utente che vuole davvero votare più di una volta, in qualsiasi modo tu lo guardi. Anche con il tuo esempio di conto bancario: i conti bancari fraudolenti sono impostati in ogni momento. –