PHP - Ayuda con Sesiones

 
Vista:

Ayuda con Sesiones

Publicado por Luis (2 intervenciones) el 24/04/2020 19:18:11
Buenos dias, quisiera su ayuda, estoy creando un Login de usuario en el cual, dependiendo del usuario me lleva a una págína diferente, por ejemplo: Si inicia sesión el usuario "Carlos" direcciona a la página "Programador" pero si inicia sesión el usuario "Julio" se direcciona a la página "Administrador", he conseguido direccionar a las páginas correspondientes al iniciar sesión pero el problema está que una vez iniciada sesión y hago clic en retroceder del navegador, regresa a la página de login y quisiera que al hacer clic en "Retroceder" se mantenga en la página de la sesión ya iniciada. Les dejo el código empleado. 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
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
<?php
 
$alert = '';
session_start();
if(!empty($_SESSION['active']))
{
	if ($data['Rol'] == "Gerencia"):
   		header('location: Gerencia/Main.php');
			elseif ($data['Rol'] == "Administrador"):
   				header('location: Administracion/Main.php');
					else:
    					header('location: Programador/Main.php');
	endif;
}
else
{
	if(!empty($_POST))
	{
		if(empty($_POST['Usuario']) || empty($_POST['Contraseña']))
		{
			echo $alert = "Ingrese su clave y contraseña";
		}
		else
		{
			require_once "conexion.php";
 
			$user = $_POST['Usuario'];
			$pass = $_POST['Contraseña'];
 
			$query = mysqli_query($connection, "SELECT * FROM DatosUsuario WHERE User = '$user' and password = '$pass'");
			$result = mysqli_num_rows($query);
 
			if($result > 0)
			{
				$data = mysqli_fetch_array($query);
				$_SESION['active'] = true;
				$_SESSION['user'] = $data['User'];
				$_SESSION['Nombres'] = $data['Nombres'];
				$_SESSION['AppPaterno'] = $data['AppPaterno'];
				$_SESSION['AppMaterno'] = $data['AppMaterno'];
				$_SESSION['DNI'] = $data['DNI'];
				$_SESSION['Direccion'] = $data['Direccion'];
				$_SESSION['Rol'] = $data['Rol'];
 
				if ($data['Rol'] == "Gerencia"):
   					header('location: Gerencia/Main.php');
						elseif ($data['Rol'] == "Administrador"):
   							header('location: Administracion/Main.php');
								else:
    								header('location: Programador/Main.php');
				endif;
			}
			else
			{
				$alert = "Usuario o contraseña incorrecta";
				session_destroy();
			}
		}
	}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Login - ERP GEINAR S.R.L.</title>
	<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
	<section id="container">
		<form action = "" method = "post">
			<h3>INICIO DE SESI&Oacute;N</h3>
			<img src="img/login.jpg" alt = "Login">
 
			<input type="text-transform:uppercase;" name="Usuario" placeholder="Usuario" onkeyup="javascript:this.value=this.value.toUpperCase();">
			<input type="password" name="Contraseña" placeholder="Contraseña">
			<div class="alert"><?php echo isset($alert)? $alert: ''; ?></div>
			<input type="submit" value="Ingresar">
		</form>
	</section>
</body>
</html>
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

Ayuda con Sesiones

Publicado por Ariel (10 intervenciones) el 24/04/2020 22:38:08
Yo crearia un archivo por ejemplo acceso_sin_permiso.php en el cual colocaria un if que si esta iniciada la sesion me redireccione a la pagina de la sesion.

Despues colocaria un include("acceso_sin_permiso.php"); en la pagina del login...
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

Ayuda con Sesiones

Publicado por Luis (2 intervenciones) el 24/04/2020 23:00:19
En que parte del login iría el include?
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

Ayuda con Sesiones

Publicado por Ariel (10 intervenciones) el 24/04/2020 23:05:43
Al principio
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