Pregunta

Estoy haciendo un sitio web (usando PHP, JavaScript y MySQL) con un sistema de votación que permite a las personas votar de forma anónima, pero solo una vez.

Significa que mi sistema tiene que saber quién votó (porque tengo que verificar si el usuario ya votó o no), pero no quería almacenar el nombre de usuario o la dirección IP del usuario en la base de datos (arruinar el anonimato).No sé cómo empezar, necesito algunas pautas;¿Qué debo buscar?

¿Fue útil?

Solución

Su peor problema es cómo asegurarse de que sus usuarios solo voten una vez, pero ese no es el punto de la pregunta: usted está preguntando cómo garantizar la anonimidad

Es más bien fácil: trate lo que sea que use para una sola votación como una contraseña, y la haya hecho.Así que digamos por el amor de Argument, está utilizando la IP.Soy consciente de los problemas con eso, pero asumamos que esta es su elección.

  • votos del usuario
  • usted ha hecho la IP y guárdelo.
  • incluso puedes ir tan lejos como salvarlo en una ubicación diferente.NINGUNA NECESIDAD DE AVIAR LO QUE HASH votó en qué opción.
  • VOTÚS DE USUARIO DE NUEVO -> IP-HASH está allley en la base de datos.
  • Para no regalar si alguien ya ha votado, no responda "ya ha votado", pero simplemente no guarde la votación.De esta manera, no hay forma de saber si hubo un voto de esta máquina

Mente, esto se trata de anonimidad, no sobre cómo garantizar una sola votación.

Otros consejos

As Lix stated, really the only way, without storing IP addresses or forcing users to register, would be to store a Cookie linked to a session, however of course this is by no means a solution, as Cookies can easily be cleared.

You could attempt to use a persistent Cookie solution, such as evercookie, but if I were a user of a site which implemented something like that, it would annoy me more than having to register, and no matter what methods are used, they can always be circumvented to remove the Cookie/identifying information.

Another possibility is another form of persistent Cookies which got a lot of publicity last year (or was it 2012 - I forget), which utilize Flash to store Cookies. These Cookies can be accessed in multiple browsers. One such solution is flash-cookie, but again, this is likely to annoy users, and would not be 100% reliable as not all users have Flash enabled or installed.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top