Sistema de Encuestas - Votar una sóla vez

ermiphp
19 de Abril del 2005
Buenos días y enhorabuena por el foro.. una pasada.

Es la primera vez que escribo, así que espero no hacerlo del todo mal.

Estoy realizando un sistema de encuestas en la web, y quiero controlar que un usuario sólo pueda votar UNA SÓLA VEZ. He probado con COOKIES de la siguiente manera:

<?
$session = $HTTP_COOKIE_VARS["encuesta"];

if ($session == "")
{
$session = uniqid(getenv("REMOTE_ADDR")); SetCookie("encuesta",$session,time()+1296000,"/",""); // Contabilizo el voto
...
} else {
// No contabilizo el voto
...
}

Sin embargo, la COOKIE parece no activarse, ya que he comprobado como se puede votar más de una vez.

¿Sabéis cómo se soluciona ésto?

Muchas gracias.


lol
19 de Abril del 2005
aha... y si el usuario borra las cookies que? podra votar las veces q quiera, esto no es efectivo...

Yo en tu caso lo que haria es guardarme en una BBDD los usuarios que han votado y hacer las comprobaciones en esta

ermiphp
19 de Abril del 2005
¿Y cómo identifico al usuario, si se trata de una encuesta anónima sin posibilidad de registrarse?

lol
19 de Abril del 2005
entonces guarda la IP en la BBDD. Si.. existen las ip's dinamicas, pero pierdes mas tiempo cambiando de IP que borrando unas cookies.
saludos

ermiphp
19 de Abril del 2005
La verdad es que con IP dinámicas (la mayoría) no creo que sea una buena alternativa.

De todas formas, gracias por tu ayuda.