Foros del Web » Programando para Internet » PHP »

Iniciar sección según nivel de usuario

Estas en el tema de Iniciar sección según nivel de usuario en el foro de PHP en Foros del Web. Un saludo a todos. Estoy trabajando con bases de datos MySQL, pero tengo una duda respecto a la restricción de usuarios mediante niveles de acceso. ...
  #1 (permalink)  
Antiguo 27/08/2009, 16:34
 
Fecha de Ingreso: agosto-2009
Mensajes: 17
Antigüedad: 14 años, 7 meses
Puntos: 0
Iniciar sección según nivel de usuario

Un saludo a todos.
Estoy trabajando con bases de datos MySQL, pero tengo una duda respecto a la restricción de usuarios mediante niveles de acceso. Tengo una tabla llamada usuarios en la cual tengo privilegios de acceso para cada usuario (usuario y administrador).

Ahora mi duda es la siguiente: ¿Cómo hacer para que según el tipo de usuario se le re direccione a una sección especifica? por ejemplo al administrador a la zona de administradores, al usuario a la zona de usuarios. No se programación en php. Este es el código:

?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}

$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset($_POST['usuario'])) {
$loginUsername=$_POST['usuario'];
$password=$_POST['contrasena'];
$MM_fldUserAuthorization = "nivel";
$MM_redirectLoginSuccess = "Admi.php";
$MM_redirectLoginFailed = "mal.php";
$MM_redirecttoReferrer = false;
mysql_select_db($database_CasaRealconn, $CasaRealconn);

$LoginRS__query=sprintf("SELECT nombre_usuario, contrasena, nivel FROM usuarios WHERE nombre_usuario=%s AND contrasena=%s",
GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text"));

$LoginRS = mysql_query($LoginRS__query, $CasaRealconn) or die(mysql_error());
$loginFoundUser = mysql_num_rows($LoginRS);
if ($loginFoundUser) {

$loginStrGroup = mysql_result($LoginRS,0,'nivel');

//declare two session variables and assign them
$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;

if (isset($_SESSION['PrevUrl']) && false) {
$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
}
header("Location: " . $MM_redirectLoginSuccess );
}
else {
header("Location: ". $MM_redirectLoginFailed );
}
}
?>
  #2 (permalink)  
Antiguo 28/08/2009, 01:16
 
Fecha de Ingreso: abril-2008
Mensajes: 32
Antigüedad: 16 años
Puntos: 0
Respuesta: Iniciar sección según nivel de usuario

Sería algo así:

Código PHP:
if ($loginStrGroup == 'usuario_normal')
    
header("Location: pagina_usuario_normal.php");
else if (
$loginStrGroup == 'administrador')
    
header("Location: pagina_usuario_administrador.php"); 
Aunque primero tienes que asegurarte de que se ha realizado el login correctamente.

Suerte
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:41.