Ver Mensaje Individual
  #10 (permalink)  
Antiguo 04/02/2010, 12:09
rtr
 
Fecha de Ingreso: abril-2009
Mensajes: 368
Antigüedad: 15 años
Puntos: 2
crear sistema de votos por ip

Hola , tengo montado un sistema de registro de votos para una encuesta ( solo si o no) , pero hasta ahora hera necesario estar registrado para votar...

¿que tengo que hacer en el código para permitir que se vote sin estar registrado y guardar la ip del usuario para controlar que solo vote una vez??

gracias y saludos

Código PHP:
/* sumo positivo */
if($_POST['positivo']){
$c="select * from votos where id_usuario = '".$_SESSION['id']."' and id_encuesta = '".$_REQUEST['id']."'";
$r=mysql_db_query($mysql_db,$c)or die(mysql_error());
$ver=mysql_fetch_array($r);
    if(
$ver['id_usuario']!=$_SESSION['id']){
    
/* Inserto voto */
    
$c1="UPDATE encuesta set positivo = positivo + 1, total = total + 1  where id = '".$_REQUEST['id']."'";
    
$r1=mysql_db_query($mysql_db,$c1)or die(mysql_error());
    
/* Inserto registro de votante*/
    
$c2="Insert into votos (id_usuario,nombre,id_encuesta,estado) values ('".$_SESSION['id']."','".$_SESSION['usuario']."','".$_REQUEST['id']."','si')";
    
$r2=mysql_db_query($mysql_db,$c2) or die(mysql_error());
    
$aviso="Su voto ha sido registrado. <br> Gracias por participar";
    }else{ 
$aviso="Usted ya ha votado en esta plataforma."; }

}
/* sumo negativo */
if($_POST['negativo']){
$c="select * from votos where id_usuario = '".$_SESSION['id']."' and id_encuesta = '".$_REQUEST['id']."'";
$r=mysql_db_query($mysql_db,$c)or die(mysql_error());
$ver=mysql_fetch_array($r);
    if(
$ver['id_usuario']!=$_SESSION['id']){
    
/* Inserto voto*/
    
$c1="UPDATE encuesta set negativo = negativo + 1 , total = total + 1 where id = '".$_REQUEST['id']."'";
    
$r1=mysql_db_query($mysql_db,$c1)or die(mysql_error());
    
/* Inserto registro de votante*/
    
$c2="Insert into votos (id_usuario,nombre,id_encuesta,estado) values ('".$_SESSION['id']."','".$_SESSION['usuario']."','".$_REQUEST['id']."','si')";
    
$r2=mysql_db_query($mysql_db,$c2) or die(mysql_error());
    
$aviso="Su voto ha sido registrado.<br> Gracias por participar";
}else{ 
$aviso="Usted ya ha votado en esta plataforma."; }