Hola a todos. Tengo un problema con un formulario (Login) en el cual necesito verificar los datos de la tabla 'usuarios'
para poder entrar. Puedo entrar correctamente pero no me verifica el tipo de usuario, ya que quiero que tenga dos caminos. Ser admin o no ser admin, y que de esta forma entre a abmadmin.php o simplemente a admin.php
Creo estar teniendo un error de logica y no logro entenderlo (tengo el cerebro quemado) pero me desespera no poder solucionarlo.
<?php include('conexion.php') ?>
<!DOCTYPE html>
<html lang="es">
<head>
<head>
<title>Login</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/estilos.css">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<meta charset="utf-8">
</head>
<body>
<div class="container">
<?php
if (isset($_POST['submit'])) {
$usuario_nombre = $_POST['usuario_login'];
$usuario_contrasenia = $_POST['contraseña_login'];
$usuario_tipos = $_POST['usuario_tipo'];
$semilla=$usuario_nombre;
$usuario_contrasenia=crypt($usuario_contrasenia,$semilla);//clave encriptada
$verificar=mysqli_query($conexion,"SELECT usuario FROM usuarios WHERE usuario='$usuario_nombre' and clave='$usuario_contrasenia'") or die (mysqli_error($conexion));
if (mysqli_num_rows($verificar)>0 and ($usuario_tipos) != 'admin'){ //devuelve la cantidad de coincidencias
header('Location: abm.php');}
else{
header('Location: abmadmin.php');}
}
?>
<form class="form-signin" action="" method="POST" >
<h2 class="form-signin-heading">Por favor, ingrese:</h2>
<label for="input" class="sr-only">Usuario</label>
<input type="text" name="usuario_login" id="input" class="form-control" placeholder="Nombre de usuario" required autofocus>
<label for="inputPassword" class="sr-only">Contraseña</label>
<input type="password" name="contraseña_login" id="inputPassword" class="form-control" placeholder="Contraseña" required>
<div class="checkbox">
<label>
<input type="checkbox" value="remember-me"> Recordarme
</label>
</div>
<div>
<button type="submit" name="submit" class="btn btn-info btn-lg">Entrar</button>
</form>
</div>
<a href="index.php"><button type="submit" name="" class="btn btn-warning btn-lg">Volver</button></a>
</a>
</div> <!-- /container -->
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="js/ie10-viewport-bug-workaround.js"></script>
</body>
</html>
Perdon por el codigo, esta bastante sucio y desprolijo, espero que lo entiendan. (soy nuevo en esto y estoy intentando aprender).
Base de Datos(tabla usuarios) :Los enlaces son solo para miembros.
Registrate o
iniciá sesiónOtra cosa un tanto extraña es que cuando me meto al login y logeo con cualquiera de estos usuarios creados en el localhost se me mete siempre y directamente al abmadmin.php (lo cual es correcto en cuando a lo establecido en el codigo por el if).
Pero cuando lo ejecuto desde la pagina web Los enlaces son solo para miembros.
Registrate o
iniciá sesión retorna al mismo login al presionar el boton entrar. Realmente no entiendo eso.
Desde ya gracias de antemano a cualquiera que me pueda ayudar!