Error Login. no verifica los datos del login con la base de datos
Publicado por salvacastro (1 intervención) el 25/12/2019 23:56:01
Estoy intentado verificar varios usuarios y contraseña con un login pero cuando hago click en "Iniciar Sesion" con cualquier dato en el campo Usuario y Contraseña, me redirige a la pagina sin verificar.
Les dejo el código de mi login.php
Les dejo la imagen de mi base de datos en phpMyAdmin
Como verán, tengo únicamente esos dos usuarios.
Pero como decía anteriormente, si pongo otro cosa en usuario y contraseña (como por ejemplo banana y banana) me redirige a la pagina principal sin verificar.

Les dejo el código de mi login.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
if (!empty($_POST)) {
if (!isset($_POST['usuario'])) {
die('Falta usuario');
}
if (!isset($_POST['clave'])) {
die('Falta password');
}
if (empty($_POST['usuario'])) {
die('Falta ingresar el usuario');
}
if (empty($_POST['clave'])) {
die('Falta ingresar password');
}
$conexion = mysqli_connect('localhost', 'root', '', 'basesectip');
$usuario = $_POST['usuario'];
$password = $_POST['clave'];
$sql = "select * from usuario where username='$usuario'";
$respuesta = mysqli_query($conexion, $sql);
$fila = mysqli_fetch_array($respuesta);
if ($fila) {
$password_en_db = $fila['clave'];
if (password_verify($password, $password_en_db)) {
session_start();
$_SESSION['login ok'] = true;
$_SESSION['usuario_id'] = $fila['id'];
header("Location: principal.php");
die();
} else {
die("Contraseña incorrecta");
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
<title>BASE SECTIP</title>
</head>
<div style="background-color: #FFF;">
<div class="login-container" style=" width: 55%; margin: auto;margin-top: 5%;padding: 5%;background-color: #f1f1f1;box-shadow: 0 2px 4px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)!important">
<div style="background-color: white; border-left: 4px solid #694E73; padding: 5%;">
<h1 style="text-align: center">BASE SECTIP</h1>
<div class="form-box">
<form role="form" action="principal.php" class="form-group" method="post">
<div class="error"></div>
<input class="form-control" name="usuario" type="text" placeholder="USUARIO" required><br>
<input class="form-control" name="clave" type="password" placeholder="CONTRASEÑA" required><br>
<input type="submit" name="operar" value="INICIAR SESION" class="btn btn-info btn-block login">
</form>
</div>
</div>
</div>
</div>
Les dejo la imagen de mi base de datos en phpMyAdmin
Como verán, tengo únicamente esos dos usuarios.
Pero como decía anteriormente, si pongo otro cosa en usuario y contraseña (como por ejemplo banana y banana) me redirige a la pagina principal sin verificar.

Valora esta pregunta


0