ho fatto un modulo per creare modificare eliminare sondaggi sul mio sito vorrei effettuare un controllo per evitare voti doppi cosa mi consigliate? cookie o ip? o altra soluzione migliore?
Grazie
ho fatto un modulo per creare modificare eliminare sondaggi sul mio sito vorrei effettuare un controllo per evitare voti doppi cosa mi consigliate? cookie o ip? o altra soluzione migliore?
Grazie
Secondo me ti basterebbe un campo in piu' nella tabella utenti(sempre che il voto debba essere abilitato solo per i registrati). Aggiorni il campo a uno nel momento della votazione e 0 di default. Quando rivotano se = 1 blocchi lo script. Con i cookie non penso, se uno chiude il browser e riapre..
IP no: se più utenti passano per uno stesso gateway? Li blocchi tutti. E se utilizzano proxy diversi o Tor?
Coookies come sopra, basta cancellarli - o magari non accettarli proprio (vabbè che in quel caso puoi far a meno di far votare..)
Forse qualcosa che faccia fare una firma lato client al broser riguardo il sistema dell'utente e poi la spedisca al tuo server, il quale si potrebbe regolare di conseguenza.
Forse trovi qualcosa in giro, è solo un'idea non so.
Ciao.
P.S.: tra IP e cookie comunque è meglio il secondo sistema.
![]()
la votazione è consentita anche per utenti non registrati!!!
quindi non c'è soluzione sicura! giusto?
grazie cmq
Se permetti di far votare anche ad utenti non registrati allora devi fare affidamento solo sui numeri (se votano 10.000 visitatori è difficile che 100 visitatori che hanno votato due volte alterino il risultato) e non devi considerare il sondaggio troppo attendibile se invece hai pochi visitatori.
La cosa migliore è con gli iscritti. In ogni caso ti consiglio i COOKIES, sicuri rapidi e semi-indolori.
![]()
l'unico sistema sicuro è la registrazione utente.. ma chiaramente non è sempre fattibile..
io farei un controllo incrociato:
intanto cookie per chi non è così malizioso da eliminarli... ed in secondo luogo devi decidere se preferisci impedire il voto ad un ip (per un tot di tempo) indipendentemente dal fatto che possa essere condiviso oppure adottare altri sistemi.
POtresti fare una versione ip estesa... cioè quando l'ip combacia con uno che ha votato, puoi controllare anche che sistema operativo e che browser utilizza.... anche se certo.. moltissimi hanno win xpp con internet explorer...![]()
Impraticabile, nella maggior parte delle università utilizzano configurazione PC standard WinXp+IE6.0 e lo stesso IP di connessione alla rete, utilizzare un controllo incrociato del genere significherebbe segare via un sacco di potenziali visitatori.Originariamente inviato da }gu|do[z]{®©
POtresti fare una versione ip estesa... cioè quando l'ip combacia con uno che ha votato, puoi controllare anche che sistema operativo e che browser utilizza.... anche se certo.. moltissimi hanno win xpp con internet explorer...![]()
Meglio solo cookies!
sì... quello che ho proposto io era un'alternativa a cookies e ip... tutto sta in una scelta che noi non possiamo stabilire.. cioè:Originariamente inviato da platone
Impraticabile, nella maggior parte delle università utilizzano configurazione PC standard WinXp+IE6.0 e lo stesso IP di connessione alla rete, utilizzare un controllo incrociato del genere significherebbe segare via un sacco di potenziali visitatori.
Meglio solo cookies!
- meglio rischiare di avere + voti perchè un furbo cancella il cookie
- o meglio rischiare di non far votare qualcuno perchè ha l'ip condiviso con uno che ha già votato?
io tendenzialmente sono per la seconda.. ma è una cosa totalmente opinabile.. quindi ognuno fa come gli pare.
Però.. per migliorare un pelo l'impatto della seconda, qualora si volese utilizzare, invece di controllare solo l'ip si possono controllare anche os e useragent. E' vero che università e uffici/aziende tendono ad avere tutto unificato.. ma per esempio gli utenti fastweb (che escono a gruppi con un unico ip pubblico) avrano configurazioni un po' più diversificate e di conseguenza se io voto il mio vicino di casa che ha il mio stesso ip pubblico mio ma magari usa internet explorer oppure un mac.. può votare lo stesso (però è anche vero che io posso vottare sia dal mio pc che dal mo mac... o sia da firefox che da internet explorer) e lo stesso discorso vale anche per i coinquilini che condividono un access point (io e i miei coinquilini abbiamo configurazioni leggermente diverse).
Poi se ci pensi bene anche con il solo cookie commetti un'esclusione: se tutta la mia famiglia vuole votare e abbiamo un solo PC... può votare uno solo di noi.
Insomma.. l'unico metodo sicuro è la registrazione utente (poi c'è l'altra problematica che è quella di assicurarsi che l'utente si registri una sola volta.. ok, ma quello è un altro discorso)... il resto sono compromessi diversi.. che possono essere pensati di volta in volta a seconda delle esigenze e della situazione. Come diceva qualcuno sopra: se prevede di avere 100.000 votanti me ne sbatto che qualcuno vota due volte e vado di soli cookies... al contrario se penso di avere solo 100 voti un voto doppio o triplo comincia a pesare tanto.. quindi posso preferire il rischio di escludere qualcuno.
infine aggiungo che un controllo aggiuntivo oltre al cookie andrebbe temporizzato (per evitare il rishcio che con ip dinamici banni due persone diverse che in tempi diversi hanno lo stesso ip). Cioè quell'ip non può votare per tot ore (a piacimento).. è chiaro che un utete smaliziato aspetterebbe e rivoterebbe un volta capito il trucco... ma è sempre un impedimento in più alla semplice cancellazione del cookie.
Un'altra possibilità che però è meno comoda per l'utente (come la registrazione) è chiedere l'e-mail dell'utente per farlo votare, e convalidare il suo voto con un id univoco mandato sotto forma di link nella e-mail. Se ci cliccail voto è confermato, altrimenti no. In questo modo basterà non far votare 2 volte la stessa e-mail (ma anche qui come per la registrazione: chi ci assicura che l'utente non usi 2 email diverse? insomma.. la certezza non c'è mai ^_^)
Insomma.. le possibilità tecniche sono queste e le abbiamo elencate credo tutte.. poi ognuno si regola a piacimento.. non c'è un metodo migliore di un altro in assoluto.. c'è un metodo migliore di un altro a seconda dello scopo, della situazione e delle preferenze...![]()
scordavo una cosa:
un utente che vota due volte e un utente che non riesce mai a votare sono entrambe condizioni che falsano il sondaggio (u voto in più contro un voto in meno)... ma in genere un utente che cancella un cookie per rivotare.. non rivota una sola volta ma tante.... quindi preferisco correre i ricschio di perdere 3-4 voti piuttosto che quello che un solo utrente voti 5... 10.. 100.. 1000... infinite volte ^_^
Però anche queste sono considerazioni che lasciano il tempo che trovano... si tratta di filosofie.. di raginamenti che possono avere una valenza in certe condizioni e un'altra valenza in altre condizioni...
![]()
Io invece sono per la prima... il discorso è che ci sono pochi utenti smaliziati che si divertono a giocherellare modificando i voti dei sondaggi e cancellandosi i cookies... per fare due / tre voti in più.... e poi? Basta...uno mica può stare a cancellarsi i cookies tutto il giorno e perdere tempo per un sondaggio.Originariamente inviato da }gu|do[z]{®©
sì... quello che ho proposto io era un'alternativa a cookies e ip... tutto sta in una scelta che noi non possiamo stabilire.. cioè:
- meglio rischiare di avere + voti perchè un furbo cancella il cookie
- o meglio rischiare di non far votare qualcuno perchè ha l'ip condiviso con uno che ha già votato?
io tendenzialmente sono per la seconda.. ma è una cosa totalmente opinabile.. quindi ognuno fa come gli pare.
Con i cookies il problema è quasi completamente arginato.
Invece con la seconda soluzioni escludi larghe fette di visitatori senza una base solida di verifica.
Se apri un webanalizer qualsiasi scopri che il 70% dei client utilizza una configurazione analoga e che esistono grosso modo circa 20 configurazioni standard.
Questo significa che per ogni ip permetti di far votare la maggior parte delle volte solo il 10% dei reali client che stanno dietro (che arrivino da università o da tutta la rete fastweb).... una protezione del genere blocca sentitamente lo scopo del sondaggio (ovvero fare numeri, è un'analisi quantitativa non qualitativa).
Con gli ultimi sistemi operativi i cookies vengono archiviati diversamente sulla base della sessione utente. Se utilizzi linux oppure winxp insomma può votare tutta la famiglia... per i computer obsoleti che si attacchino... pazienza.Poi se ci pensi bene anche con il solo cookie commetti un'esclusione: se tutta la mia famiglia vuole votare e abbiamo un solo PC... può votare uno solo di noi.
Ehheheheheh l'avevo detto proprio io!Insomma.. l'unico metodo sicuro è la registrazione utente (poi c'è l'altra problematica che è quella di assicurarsi che l'utente si registri una sola volta.. ok, ma quello è un altro discorso)... il resto sono compromessi diversi.. che possono essere pensati di volta in volta a seconda delle esigenze e della situazione. Come diceva qualcuno sopra: se prevede di avere 100.000 votanti me ne sbatto che qualcuno vota due volte e vado di soli cookies... al contrario se penso di avere solo 100 voti un voto doppio o triplo comincia a pesare tanto.. quindi posso preferire il rischio di escludere qualcuno.
Questa possibilità non è male affatto.... c'è da dire che pochi utenti hanno voglia di dichiarare la propria email su un sito visto lo spamming che gira. Però... è un'ottima idea. (io onestamente non mi metterei a votare con tutte le mie caselle di posta sarebbe troppo lungo).Un'altra possibilità che però è meno comoda per l'utente (come la registrazione) è chiedere l'e-mail dell'utente per farlo votare, e convalidare il suo voto con un id univoco mandato sotto forma di link nella e-mail. Se ci cliccail voto è confermato, altrimenti no. In questo modo basterà non far votare 2 volte la stessa e-mail (ma anche qui come per la registrazione: chi ci assicura che l'utente non usi 2 email diverse? insomma.. la certezza non c'è mai ^_^)
Mi sa che le abbiamo proprio dette tutte.... a te la scelta luketto.Insomma.. le possibilità tecniche sono queste e le abbiamo elencate credo tutte.. poi ognuno si regola a piacimento.. non c'è un metodo migliore di un altro in assoluto.. c'è un metodo migliore di un altro a seconda dello scopo, della situazione e delle preferenze...![]()
![]()