PHP - Ayuda con Cookies en validacion de login funcion "recuerdame"

 
Vista:
sin imagen de perfil
Val: 15
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Ayuda con Cookies en validacion de login funcion "recuerdame"

Publicado por Manuel (8 intervenciones) el 28/03/2020 19:52:13
Hola, un saludo a todo mundo.

Les pido un poco de ayuda ya que estoy atorado con la funcion de recuerdame de un login comun, veo que si reviso los cookies en las opciones del nacegador si se guardan los datos pero al momento de mostrarlo en el formulario de logun ya no funciona podrian echarle un ojo porfavor.

Aqui el formulario deonde trato de recuperar mis cookies
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
if (isset($_COOKIE['usuario']) AND isset($_COOKIE['password'])) {
 
    $usuario = $_COOKIE['usuario'];
    $password = $_COOKIE['password'];
 
    echo'<script>
          document.getEelementById("usuario").value = "$usuario";
          document.getEelementById("password").value = "$password";
        </script>';
}
 
 
 ?>
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>Ubicart | Log in</title>
  <!-- Tell the browser to be responsive to screen width -->
  <meta name="viewport" content="width=device-width, initial-scale=1">
 
  <!-- Font Awesome -->
  <link rel="stylesheet" href="../../plugins/fontawesome-free/css/all.min.css">
  <!-- Ionicons -->
  <link rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
  <!-- icheck bootstrap -->
  <link rel="stylesheet" href="../../plugins/icheck-bootstrap/icheck-bootstrap.min.css">
  <!-- Theme style -->
  <link rel="stylesheet" href="../../dist/css/adminlte.min.css">
  <!-- Google Font: Source Sans Pro -->
  <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,400i,700" rel="stylesheet">
</head>
<body class="hold-transition login-page">
<div class="login-box">
 
  <!-- /.login-logo -->
  <div class="card">
    <div class="card-body login-card-body">
      <div class="login-logo">
    <img src="dist/img/index.png" width="80" height="80">
  </div>
      <p class="login-box-msg">Ventas Ubicart</p>
 
      <form action="fracmentos/validar.php" method="post">
        <div class="input-group mb-3">
          <input id="usuario" type="text" class="form-control" style="text-transform:lowercase;" placeholder="Ingresa tu Usuario" name="usuario" onkeyup="javascript:this.value=this.value.toLowerCase();" >
          <div class="input-group-append">
            <div class="input-group-text">
              <span class="fas fa-envelope"></span>
            </div>
          </div>
        </div>
        <div class="input-group mb-3">
          <input id="password" type="password" class="form-control" placeholder="Ingresa tu Contraseña" name="password" >
          <div class="input-group-append">
            <div class="input-group-text">
              <span class="fas fa-lock"></span>
            </div>
          </div>
        </div>
        <div class="row">
          <div class="col-8">
            <div class="icheck-primary">
              <input type="checkbox" name="recordar">
              <label for="recordar">
                Recordar
              </label>
            </div>
          </div>
          <!-- /.col -->
          <div class="col-4">
            <button type="submit" class="btn btn-primary btn-block">Ingresar</button>
          </div>
          <!-- /.col -->
        </div>
      </form>
 
    </div>
    <!-- /.login-card-body -->
  </div>
</div>


Este es mi documento donde valido la informacion de mi login.
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php session_start();?>
 
<?php
// Set session variables
include 'conexion.php';
 
$_SESSION["usuario"] = $_POST['usuario'];
 
        if(preg_match('/^[a-zA-Z0-9]+$/', $_POST["usuario"])){
 
		$password = crypt($_POST["password"], '$2a$07$asxx54ahjppf45sd87a5a4dDDGsystemdev$');
 
		$password1 = trim($_POST['password']);
 
        $username = trim($_POST['usuario']);
 
        if (isset($_POST['recordar'])){
				//set up cookie
				setcookie('usuario', $username, time() + (86400 * 30));
				setcookie('password', $password1, time() + (86400 * 30));
			}
 
 
        $query = "SELECT * FROM usuarios WHERE usuario='$username' AND password='$password'";
 
       	$result=mysqli_query($con,$query);
		$num_row = mysqli_num_rows($result);
		$row= mysqli_fetch_array($result);
 
		$permiso=$row["permiso"];
		$_SESSION["permiso"]=$row["permiso"];
 
		$id=$row["id"];
		$_SESSION["id"]=$row["id"];
 
		$fecha=$row["fecha"];
		$_SESSION["fecha"]=$row["fecha"];
 
		$nombre=$row["nombre"];
		$_SESSION["nombre"]=$row["nombre"];
 
		$apellido=$row["apellido"];
		$_SESSION["apellido"]=$row["apellido"];
 
		$imagen=$row["imagen"];
		$_SESSION["imagen"]=$row["imagen"];
 
		$localidad=$row["localidad"];
		$_SESSION["localidad"]=$row["localidad"];
 
 
if($num_row == 1){
		if($permiso=="Administrador"){
                 echo '<script>
                                        window.location.href = "../vistas/inicio.php";
                                </script>';
	}
 
else if ($permiso=="Vendedor(a)"){
	echo '<script>
                                        window.location.href = "../vistas/reporte.php";
                                </script>';
}
 
else if ($permiso=="Instalador"){
	echo '<script>
                                        window.location.href = "../vistas/instalaciones.php";
                                </script>';
}
 
 
 
	}
else{
		echo'
		<script>
		window.location.href="../index.php";
		alert("USUARIO O CONTRASEÑA INCORRECTOS");
	</script>';
	}
}
 
?>


y aqui cierro mi sesion.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
session_start();
unset($_SESSION['usuario']);
unset($_SESSION['password']);
session_destroy();
 
if (isset($_COOKIE['usuario']) AND isset($_COOKIE['password'])) {
 
	    $usuario = $_COOKIE['usuario'];
	    $password = $_COOKIE['password'];
 
		setcookie("usuario", time() -1);
		setcookie("password", time() -1);
 
	}
 
header("Location: ../index.php");

de antemano agradezco su apoyo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda con Cookies en validacion de login funcion "recuerdame"

Publicado por Julio (830 intervenciones) el 28/03/2020 20:18:39
Hola.

No hace falta que utilices JavaScript. Podrías hacer simplemente, dentro del input de usuario por ejemplo, lo siguiente:

1
value="<?php echo (isset($_COOKIE['usuario'])) ? $_COOKIE['usuario'] : ''; ?>

Es decir, si existe la cookie, entonces asignas el valor al usuario. Vamos, lo que haces con JavaScript pero haciéndolo directamente en PHP sin necesidad de ningún script posterior.

Por cierto, que tu error me inclino a pensar que está aquí:

1
document.getEelementById("usuario").value = "$usuario";

Fíjate que getEelementById tiene una e de más.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar