verificar usuario y contraseña
Publicado por alejandro (7 intervenciones) el 24/11/2017 00:18:28
Tengo un problema con mi código al momento de verificar el usuario y contraseña, me urge averiguar el problema, anexo mi código de verificación
y el de registro
los usuarios y contraseñas se guardan perfectamente en la base de datos y en sus lugares o sea el nombre de usuario se guarda en la base de datos "basedatosmaster" en la tabla "usuarios" y en el campo "nombre_usuario" y la contraseña en el campo "password"
no se así puedan encontrar mi error ya que por mas que reviso mi codigo sigo sin entender cual es el erro, de verdad se lo agradeceria al que me pueda ayudar en mi problema, si necesitan mas codigos para ayudarme favor de hacermelo saber, muchas gracias
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
<body>
<?php
session_start();
?>
<?php
$host_db = "localhost";
$user_db = "root";
$pass_db = "";
$db_name = "basedatosmaster";
$tbl_name = "usuarios";
$conexion = new mysqli($host_db, $user_db, $pass_db, $db_name);
if ($conexion->connect_error) {
die("La conexion falló: " . $conexion->connect_error);
}
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM $tbl_name WHERE nombre_usuario = '$username'";
$result = $conexion->query($sql);
if ($result->num_rows > 0) {
}
$row = $result->fetch_array(MYSQLI_ASSOC);
if (password_verify($password, $row['password'])) {
$_SESSION['loggedin'] = true;
$_SESSION['username'] = $username;
$_SESSION['start'] = time();
$_SESSION['expire'] = $_SESSION['start'] + (5 * 60);
echo "Bienvenido! " . $_SESSION['username'];
echo "<br><br><a href=panel-control.php>Panel de Control</a>";
}
else {
echo "Nombre de Usuario o Password incorrectos.";
echo "<br><a href='login.html'>Volver a Intentarlo</a>";
}
mysqli_close($conexion);
?>
</body>
y el de registro
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
<body>
<?php
$host_db = "localhost";
$user_db = "root";
$pass_db = "";
$db_name = "basedatosmaster";
$tbl_name = "usuarios";
$form_pass = $_POST['password'];
$hash = password_hash($form_pass, PASSWORD_BCRYPT);
$conexion = new mysqli($host_db, $user_db, $pass_db, $db_name);
if ($conexion->connect_error) {
die("La conexion falló: " . $conexion->connect_error);
}
$buscarUsuario = "SELECT * FROM $tbl_name
WHERE nombre_usuario = '$_POST[username]' ";
$result = $conexion->query($buscarUsuario);
$count = mysqli_num_rows($result);
if ($count == 1) {
echo "<br />". "El Nombre de Usuario ya a sido tomado." . "<br />";
echo "<a href='index.html'>Por favor escoga otro Nombre</a>";
}
else{
$query = "INSERT INTO Usuarios (nombre_usuario, password)
VALUES ('$_POST[username]', '$hash')";
if ($conexion->query($query) === TRUE) {
echo "<br />" . "<h2>" . "Usuario Creado Exitosamente!" . "</h2>";
echo "<h4>" . "Bienvenido: " . $_POST['username'] . "</h4>" . "\n\n";
echo "<h5>" . "Hacer Login: " . "<a href='login.html'>Login</a>" . "</h5>";
}
else {
echo "Error al crear el usuario." . $query . "<br>" . $conexion->error;
}
}
mysqli_close($conexion);
?>
</body>
los usuarios y contraseñas se guardan perfectamente en la base de datos y en sus lugares o sea el nombre de usuario se guarda en la base de datos "basedatosmaster" en la tabla "usuarios" y en el campo "nombre_usuario" y la contraseña en el campo "password"
no se así puedan encontrar mi error ya que por mas que reviso mi codigo sigo sin entender cual es el erro, de verdad se lo agradeceria al que me pueda ayudar en mi problema, si necesitan mas codigos para ayudarme favor de hacermelo saber, muchas gracias
Valora esta pregunta
0