Tema: update
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/04/2012, 04:12
Avatar de interjsr
interjsr
 
Fecha de Ingreso: octubre-2011
Ubicación: Madrid
Mensajes: 81
Antigüedad: 12 años, 6 meses
Puntos: 2
update

Buenas, estoy intentando hacer un update a una tabla en mysql desde php. La cosa es que cuando el usuario se loga y no mete la contra correcta incremento los intentos en 1 y cuando es el tercero bloqueo.

id integer
tipo varchar(1)
usuario varchar(12)
contra varchar(12)
bloq varchar (1)
intentos varchar(1)

Y el código:

arriba es si todo está bien y apartir de aquí si no ha ido bien el login
else{
//si no hay usuario con el login/password o está bloqueado puede ser 2 cosas. Pero para ello tienne que existir el usuario:
$sql1 = "SELECT * FROM usuarios WHERE usuario='$f_Usuario'";
$rs1 = mysql_query($sql1, $conn);

//1. Si existe el usuario puede que estuviese mal la contraseña o que ya estuviese bloqueado.
if ($row1 = mysql_fetch_row($rs1))
{
//rescato el valor de intento para saber los intentos fallidos a los que se ha tenido acceso a este usuario.
//Y también el campo bloqueado
$int= $row1[5];
$bloq= $row1[4];
//Si el usuario no está bloqueado.
if ($bloq = '0')
{
//Si tiene menos de 3 intentos
if ($int < '2')
{
$sql = "UPDATE usuarios Set Intentos = Intentos + 1 WHERE Usuario='$f_Usuario'";
//$sql = "UPDATE usuarios Set Intentos = Intentos + 1 WHERE Usuario = '".$f_Usuario."'";
$rs2 = mysql_query($sql,$conn);
header("Location:".$f_Ruta1);
exit();
}
//ya tiene 2 intentos y con este tercero se bloquea el usuario
else
{
$sql = "UPDATE usuarios SET Bloq = '1', Set Intentos = '0' WHERE usuario='$f_Usuario'";
//$sql = "UPDATE usuarios Set Bloq = '1', Set Intentos = '0' WHERE Usuario = '".$f_Usuario."'";
$rs2 = mysql_query($sql,$conn);
header("Location:".$f_Ruta1);
exit();
mysql_free_result($rs2);
}
}
//el usuario está bloqueado directamente lo redirijimos a la misma pantalla, auqneu estuviese bien la contraseña.
else
{
header("Location:".$f_Ruta1);
exit();
}
}
//2.Si no existe usuario redirijimos al mismo sitio.
else
{
header("Location:".$f_Ruta1);
exit();
}
mysql_free_result($rs1);
}
mysql_close($conn);
exit();