Sistema votazione,aiuto con voti doppi

  • Creatore Discussione Creatore Discussione Dario23
  • Data di inizio Data di inizio

Dario23

Utente Attivo
16 Feb 2009
32
0
0
ciao a tutti utlizzo un sistema di votazione per immagini in php cn db,il mio problema e che non devo autorizzare l'accesso solo ai loggati ma a tutti,e fino a qua niente di strano,il problema sorge quando un utente decide di tornare indietro cn la pagina e votare di nuovo,come posso eliminare questo problema senza costringere le xsone a essere loggati x poter votare?
Grazie
 
ciao
penso che il sistema migliore siano i cookies.
si può votare solo se il cookie non esiste, votando generi il cookie.
puoi dare poi al cookie un tempo di vita (es 24 ore)
 
Quoto borgo anche se purtroppo non esiste un metodo assolutamente infallibile dato che i cookie possono essere cancellati. Un altro sistema potrebbe essere quello di meorizzare l'IP, ma in questo caso si avrebbero i problemi legati ai proxy.
 
Si avevo pensato la stessa cosa,graie ragazzi della risposta,ora in ke modo dovrei agire?Non ho mai messo dei cookie..prima d'ora,ma sarà interessante farlo e imparare un'ltra cosa ciao :)
 
ciao raga alora io ho inseririto queste 2 stringhe,una relativa ai cookie e una al messaggio all'utente kelo avverte di aver già votato
cookie
PHP:
setcookie("voted_for_$id","yes",time()+60*60*24*30);

questa realitiva al mess.
PHP:
if ($ _COOKIE [ "voted_for_ ($ row [" id "]}"]){ 
   ?> <form action="index.php" method="POST"> 
<table align="center" border="0" cellpadding="2" cellspacing="0"> <tr> <td> 
Hai già votato per questa immagine. 
<input type="submit" name="submit" value="next image"> 
</ td> 
</ tr> 
</ table> <input name = "show" type = "hidden" value = "<? php echo $ next;?>"> </ form> <? php 
   else () 
   ?> <form action="index.php" method="POST"> align="center" <table border="0" cellpadding="2" cellspacing="0"> <tr> <td rowspan = "2" > terribile </ td> <td rowspan="2" width="10"> </ td> <? php / / voto forma for ($ i = 1; $ i <= $ max_points; $ i + +) ( ?> <td align="center"> <? php echo $ i;?> </ td> <? php)?> rowspan="2" <td width="10"> </ td> <td rowspan = "2"> awesome </ td> </ tr> <tr> <? php for ($ i = 1; $ i <= $ max_points; $ i + +) (?> <td align="center"> < input type = "radio" name = "voto" value = "<? php echo $ i;?>" onclick = "submit ();"></ td> <? php)?> </ tr> </ table > <input name = "show" type = "hidden" value = "<? php echo $ next;?>"> <input name = "id" type = "hidden" value = "<? php echo $ row [" id "];?>"> </ form> 

<? php)?>


Ma mi xmette ancora di votare 2 volte..xkè ragà?grazie
 
Ultima modifica:
inserirei il controllo al momento della query che inserisce il voto nel database, se il cookie è settato questa non deve avvenire.
 
ciao eliox grazie per l'interessamento ma ho fatto proprio come dici tu,adesso ho impostato la protezione x 24 h,ho anke aggiunto un pulsante che cambia le foto x vedere se c'è ne sn votabili.Tutto ok problema risolto
:beer::fonzie:
 

Discussioni simili