PHP - Login con roles de usuario

 
Vista:

Login con roles de usuario

Publicado por Rol de usuario (2 intervenciones) el 17/02/2020 23:09:19
Hola, estoy montando un login con diferentes roles de usuario guardados en una base de datos, pero al ingresar no me redirecciona.
Este es el código que tengo:

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
<?php
include("connect.php");
$tbl_name="user_levels"; // Table name
 
$username=$_POST['username']; // username sent from form
$password=$_POST['password']; // password sent from form
 
 
// To protect MySQL injection
//$username = stripslashes($username);
//$password = stripslashes($password);
//$username = mysql_real_escape_string($username);
//$password = mysql_real_escape_string($password);
 
//Query
$sql="SELECT * FROM $tbl_name WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$rows = mysql_fetch_assoc($result);
 
 
//Direct pages with different user levels
if ($row['userlevel'] == '1') {
	header('location: user1.php'); //User1
	session_register("username");
	session_register("password");
 
}
 
 
elseif ($row['userlevel'] == '2') {
	header('location: user2.html'); //User2
	session_register("username");
	session_register("password");
 
}
elseif ($row['userlevel'] == '3') {
	header('location: user3.html'); //user 3
	session_register("username");
	session_register("password");
 
}
elseif ($row['userlevel'] == '4') {
	header('location: user4.html'); // user4
	session_register("username");
	session_register("password");
 
}
else
{
	// Error login
	echo "<script>alert('Access Denied!');
	window.location='index.php';
	</script>";
}
 
?>


y l base de datos es esta:

1
2
3
4
5
6
7
8
9
10
11
12
13
DROP TABLE IF EXISTS `user_levels`;
CREATE TABLE `user_levels` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(20) NOT NULL,
  `password` varchar(20) NOT NULL,
  `userlevel` varchar(20) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
 
INSERT INTO `user_levels` VALUES ('1', 'user1', 'user1', '1');
INSERT INTO `user_levels` VALUES ('2', 'user2', 'user2', '2');
INSERT INTO `user_levels` VALUES ('3', 'user3', 'user3', '3');
INSERT INTO `user_levels` VALUES ('4', 'user4', 'user4', '4');

Alguna ayuda??
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

Login con roles de usuario

Publicado por Julio (830 intervenciones) el 18/02/2020 00:01:29
Hola.

Haz un var_dump($rows) justo después de definirla. ¿Qué hay?

EDITO:

Ah, espera. Defines $rows y luego utilizas $row, fíjate.

-----------------------------
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
1
Comentar