2009-06-25 11 views
6

Il sondaggio/voto/sondaggio univoco che intendo è, l'utente può votare una sola volta. Come lo faccio? Tieni traccia dei loro IP? Accesso? Accanto al login, cos'altro? (l'accesso è la mia ultima opzione, quindi accanto all'accesso, c'è qualcos'altro che posso fare?)Crea sondaggi/sondaggi/sondaggi unici in php

risposta

8

Per limitare il numero di voti per persona, è necessario tenere traccia della persona.

Ora ci possono essere diversi modi per farlo, e io li elenco con i loro pro e contro. E 'per te decidere quale metodo ti si addice meglio.

  1. login: questo ti offrirà il massimo controllo. Ma è anche un po 'macchinoso per l'utente. e la tua ultima preferenza
  2. IP: come gestirai le persone dietro i proxy Web? Che ne dici di persone con connessioni dial-up e/o IP dinamici?
  3. cookie: questo è buono per i sondaggi di breve termine, in modo da poter impostare la scadenza di cookie per un tempo in cui il sondaggio è terminato. Ma, un potenziale svantaggio è che un utente (in contrasto con un luser) saprà come eliminare i cookie!
  4. openId: Anche se questo metodo non è troppo diverso dal metodo di 'login', questo salva l'utente dalla registrazione (che è davvero la parte che sux di più sugli accessi).

EDIT: il problema di questa situazione è che è necessario per risolvere il identità dell'utente. Penso che OpenID lo faccia molto bene.

Cheers,

jrh.

+0

Grazie .. Ho pensare a queste soluzioni, che lei ha ragione, ognuno di loro ha i suoi pro e contro ... C'è altro modo u può pensare ?? – jingleboy99

+0

Ti suggerisco di andare con il metodo openid. ma è un po 'più complicato da implementare rispetto ad altri sistemi. – jrharshath

+0

Bene, grazie. Controllerò sicuramente l'openID. Votato per la migliore risposta .. :) – jingleboy99

2

Si può sempre memorizzare un cookie sul proprio computer. Attenzione, tuttavia, che l'utente possa disabilitare facilmente i cookie o modificare i contenuti di un cookie. Non esiste un metodo affidabile al 100% per fare quello che si vuole fare - l'utente può sempre creare un nuovo account, o spostare in un altro computer, ecc

Se si vuole andare con l'approccio di cookie, però, ci sono tre possibilità.

  1. È possibile memorizzare un po 'di testo che dice questa persona ha già votato
  2. È possibile memorizzare un ID univoco riferimento il loro voto
  3. È possibile memorizzare un cookie di sessione e conservare il resto dei dati sul server (probabilmente più sicuro, dal momento che non possono modificare i dati, solo l'id di sessione, e probabilmente lo invaliderà).
0

Il modo più sicuro è un sistema di accesso.

Ma se non avete intenzione di utilizzare uno, che ho usato per aggiungere un hash contenente gli utenti IP e la strega del browser mi aiuterà filtrare in misura molto meglio allora solo semplice IP (la stringa browser potrebbe essere diverso per persone diverse utilizzando lo stesso browser, a causa della versione, del sistema operativo e delle estensioni installate), ma hai ancora problemi nel cambiare browser, lo stesso problema dei cookie. L'hash è stato memorizzato in un database.