Buenos dias amigos,
estoy realizando un sistema basado en php para la defensa de la tesis para el dia viernes, en el cual el inicio de sesion tiene que haber un contador que al llegar a tres intentos fallidos de sesion bloquea el usuario, realiza lo esperado pero de forma global por ejemplo si yo tengo dos intentos fallidos y viene otro usuario y ingresa de forma fallida lo bloquea a el me gustaria que realice el contador de forma individual, es decir aqui les muestro el codigo espero me puedan ayudar.
Código PHP:
<?php
session_start();
error_reporting(E_ALL ^ E_NOTICE);
include dirname(dirname(__FILE__))."/config.php";
$link=Conectarse();
$login = $_POST['login'];
$pass = $_POST['pass'];
$pass=sha1(md5($pass));
$query = sprintf("SELECT usuarios.id,
usuarios.login,
usuarios.nombreu,
usuarios.apaterno,
usuarios.amaterno,
usuarios.cedulau,
usuarios.email,
usuarios.id_nivelu,
usuarios.id_statusu
FROM usuarios WHERE usuarios.login='%s'&& usuarios.password = '%s'",
$login, $pass);
$result=mysql_query($query,$link);
$res = sprintf("SELECT login FROM usuarios WHERE login = '".$login."'");
$resultado=mysql_query($res,$link);
if(!mysql_num_rows($resultado)){
?>
<script languaje="javascript">
alert("Nombre de Usuario Incorrecto Verifique e Intente de Nuevo.");
location.href = "../login.php";
</script>
<?php
}elseif(!isset($_SESSION['intentos'])){
$_SESSION['intentos'] = 1;
}else{
$_SESSION['intentos'] = $_SESSION['intentos'] + 1;
}
?>
<script languaje="javascript">
alert("Contraseña Incorrecta\nIntento #<?php echo $_SESSION['intentos'];?> Luego de tres Intentos se bloqueara el Usuario por medidas de seguridad.");
location.href = "../login.php";
</script>
<?php
if(mysql_num_rows($result)){
if($array=mysql_fetch_array($result)){
$_SESSION["id"]= $array["id"];
$_SESSION["login"]= $array["login"];
$_SESSION["nombreu"]= $array["nombreu"];
$_SESSION["apaterno"]= $array["apaterno"];
$_SESSION["amaterno"]= $array["amaterno"];
$_SESSION["cedulau"]= $array["cedulau"];
$_SESSION["email"]= $array["email"];
$_SESSION["id_nivel"]= $array["id_nivelu"];
$_SESSION["id_status"]= $array["id_statusu"];
$id_status = $array['id_statusu'];
$query3 =sprintf("SELECT * FROM usuarios, status_usuario WHERE usuarios.id_statusu=status_usuarios.id_status AND usuarios.login = status_usuarios.id_status");
if($id_status == 2){
header("location:/cooperativa/restringido/acceso_restringido.html");
}else{
$id_nivel = $array['id_nivelu'];
$user = $array['user'];
$query2 = sprintf("SELECT * FROM usuarios,nivel WHERE usuarios.id_nivelu=nivel.id_nivel");
if($id_nivel == 1){
header("Location:/cooperativa/admin/user_admin.php");
}elseif($id_nivel == 2){
header("Location:/cooperativa/personal/user_personal.php");
}elseif($id_nivel == 3){
header("Location:/cooperativa/standar/user_standard.php");
}
}
}
}elseif($_SESSION['intentos']>=3){
$var=2;
$modif=sprintf("UPDATE usuarios SET id_statusu = '".$var."' WHERE usuarios.login='".$login."'");
$modifi=mysql_query($modif,$link);
$_SESSION['intentos'] = 0;
header("location:/cooperativa/restringido/acceso_restringido.html");
}
mysql_free_result($result);
mysql_close();
?>