PHP - roles de usuarios

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

roles de usuarios

Publicado por ernesto (11 intervenciones) el 21/11/2020 04:14:52
hola a todos
tengo la dificultad de programar la parte del login del usuario normal y admin, hice ambos por separado diferente formulario para cada uno, lo que quiero hacer
juntar en un solo formulario de logueo y que valide segun el usuario admin o usuario normal muestre las vistas que corresponde a cada uno, que si me aparece en los formularios que hice para cada uno


el login del adminstrador que muestra las vistas del adminsitrador (admin.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
?php
if (isset($enviar)) {
	$username = clear($username);
	$password = clear($password);
 
	$q=$mysqli->query("SELECT * FROM admins WHERE username='$username' AND  password='$password'");
 
	if (mysqli_num_rows($q)>0) {
		$r =mysqli_fetch_array($q);
		$_SESSION['id'] =$r['id'];
		redir("?p=admin");
	}else{
		alert("Los datos no son validos");
		redir("?p=admin");
	}
 
}
 
if (isset($_SESSION['id'])) { //si hy sesion
	?>
	<a href="?p=agregar_producto">
		<button class="btn btn-primary"><i class="fa fa-plus-circle"></i>Agregar Productos</button>
	</a>
	<?php
 
}else{
	?>
	<center>
		<form method="post" action="">
			<div class="centrar_login">
				<label><h2><i class="fa fa-key"></i> Iniciar Sesion como administrador</h2></label>
				<div class="form-group">
					<input type="text" class="form-control" placeholder="Usuario" name="username" />
				</div>
				<div class="form-group">
					<input type="password" class="form-control" placeholder="Contraseña" name="password" />
				</div>
				<div class="form-group">
					<button class="btn btn-submit" name="enviar" type="submit"><i class="fa fa-sign-in"></i>Ingresar</button>
				</div>
			</div>
		</form>
	</center>
	<?php
 
}

el login del usuario normal (usuario.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
<?php
if(isset($_SESSION['id_cliente'])){
	redir("./");
}
 
if(isset($enviar)){
	$username = clear($username);
	$password = clear($password);
 
	$q = $mysqli->query("SELECT * FROM clientes WHERE username = '$username' AND password = '$password'");
 
	if(mysqli_num_rows($q)>0){
		$r = mysqli_fetch_array($q);
		$_SESSION['id_cliente'] = $r['id'];
		if(isset($return)){
			redir("?p=".$return);
		}else{
			redir("./");
		}
	}else{
		alert("Los datos no son validos",0,'login');
		//redir("?p=login");
	}
 
 
}
	?>
 
 
	<center>
		<form method="post" action="">
			<div class="centrar_login">
				<label><h2><i class="fa fa-key"></i> Iniciar Sesión</h2></label>
				<div class="form-group">
					<input type="text" autocomplete="off" class="form-control" placeholder="Usuario" name="username"/>
				</div>
 
				<div class="form-group">
					<input type="password" class="form-control" placeholder="Contraseña" name="password"/>
				</div>
 
				<div class="form-group">
					<button class="btn btn-submit" name="enviar" type="submit"><i class="fa fa-sign-in"></i> Ingresar</button>
				</div>
			</div>
		</form>
	</center>
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 joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

roles de usuarios

Publicado por joel (1269 intervenciones) el 21/11/2020 20:54:04
Hola Ernesto, yo creo que el problema esta en tener dos tablas para gestionar los usuarios y los adminstradores... yo utilizaría una sola tabla y que tenga un valor determine si ese usuario es administrador o no, de esta manera en una sola validación podrás validar cualquier usuario.

No se si me he sabido explicar...
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
sin imagen de perfil
Val: 18
Ha aumentado su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

roles de usuarios

Publicado por ernesto (11 intervenciones) el 22/11/2020 01:21:20
si bro , justo esa es mi consulta, por eso que tengo 2 formularios, se ve mal que aparezca en el menu el logueo del admin y el usuario
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
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

roles de usuarios

Publicado por joel (1269 intervenciones) el 25/11/2020 11:08:29
Si exacto... se ve extraño... fíjate que ninguna web lo tiene!!!

Seria diferente, si hubiera una pagina de login en una url aparte solo para administradores, pero esto no se utiliza mucho, ya que es doble trabajo de mantenimiento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar