Hola, tengo un script para iniciar sesión, pero necesito direccionar a url según usuario, gracias

Necesito direccionar a un sitio si es administrador y a otro sitio si es usuario. Muchas gracias por la colaboración

Este es el código

¿

<?php
session_start();
// modificacion de código Xombra (www.xombra.com) 21/03/2009 para sectorweb.net
include("config.php");
$login = htmlspecialchars(trim($_POST['login']));
$pass = sha1(md5(trim($_POST['pass']))); // encriptamos en MD5 para despues comprar (Modificado)
// $query="SELECT * FROM usuarios WHERE login='$login'"; Antes
$link=mysql_connect($server,$dbuser,$dbpass);
$query = sprintf("SELECT usuarios.login,
usuarios.nombre,
usuarios.clase1,
usuarios.hora1,
usuarios.evaluacion,
usuarios.evaluacion,
usuarios.medidacintura,
usuarios.cadera,
usuarios.pecho,
usuarios.pierna,
usuarios.pantorrilla,
usuarios.brazo,
usuarios.antebrazo,
usuarios.calorias,
usuarios.estado,
usuarios.id,
usuarios.descripcion,
usuarios.peso,
usuarios.mes
FROM usuarios WHERE usuarios.login='%s' && usuarios.password = '%s'", // Ahora
mysql_real_escape_string($login),mysql_real_escape_string($pass));
$result=mysql_db_query($database,$query,$link);
// if(mysql_num_rows($result)==0){ // antes
if(mysql_num_rows($result)){ // nos devuelve 1 si encontro el usuario y el password
$array=mysql_fetch_array($result);
// if($array["password"]==crypt($pass,"semilla") ){ // Antes
/* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo. Recuerda usar semilla para encriptar los dos passwords. */
$_SESSION["login"]=$array["login"];
$_SESSION["nombre"]=$array["nombre"];
$_SESSION["clase1"]=$array["clase1"];
$_SESSION["hora1"]=$array["hora1"];
$_SESSION["evaluacion"]=$array["evaluacion"];
$_SESSION["calorias"]=$array["calorias"];
$_SESSION["medidacintura"]=$array["medidacintura"];
$_SESSION["cadera"]=$array["cadera"];
$_SESSION["pecho"]=$array["pecho"];
$_SESSION["pierna"]=$array["pierna"];
$_SESSION["pantorrilla"]=$array["pantorrilla"];
$_SESSION["brazo"]=$array["brazo"];
$_SESSION["antebrazo"]=$array["antebrazo"];
$_SESSION["calorias"]=$array["calorias"];
$_SESSION["mes"]=$array["mes"];
$_SESSION["estado"]=$array["estado"];
$_SESSION["descripcion"]=$array["descripcion"];
$_SESSION["peso"]=$array["peso"];
$_SESSION["id"]=$array["id"];// Agrgado Nuevo
header("Location:contadorcalorias.php");
} else {
echo "Login o Password Incorrectos"; // Ahora
}
?>

1 Respuesta

Respuesta
1

Es tan fácil como tener en nuestra tabla un campo llamado privilegios. Entonces haríamos lo siguiente

¿
<?php
$consulta=mysql_query("SELECT * FROM Usuarios WHERE Login='$login" and Password='$password'");
$usuario=mysql_fetch_row($consulta);
//Suponiendo que el campo privilegios es el numero 5
$privilegios=$usuario[5];
//Comprobamos y redireccionamos
// La redirección la puedes hacer por javascript o por php
if ($privilegios=="Administrador"){
    print('<script>location.href="paneldecontrol.php"</script>'); //Esto es mediante JavaScript
} else if($privilegios=="Usuario"){
    header("Location: perfil.php"); //Esto es mediante php
}
?>

Gracias por tu pronta respuesta, cuando inserto tu código me sale error de sintaxis, como quedaría al insertarlo en mi script. Muchas Gracias (Nota: soy novato disculpa la molestia)

Cambia los datos por los de tu tabla y base de datos y debería funcionar

¿
<?php
$login="loquesea";
$password="laquesea";
$consulta=mysql_query("SELECT * FROM Usuarios WHERE Login='$login" and Password='$password'");
$usuario=mysql_fetch_assoc($consulta);
//Suponiendo que el campo privilegios es el numero 5
$privilegios=$usuario['privilegios'];
//Comprobamos y redireccionamos
// La redirección la puedes hacer por javascript o por php
if ($privilegios=="Administrador"){
 print('<script>location.href="paneldecontrol.php"</script>'); //Esto es mediante JavaScript
} else if($privilegios=="Usuario"){
 print('<script>location.href="usuarios.php"</script>');
}
?>

Si puedes mandarme una captura de tu código o tu código por aquí para ver si tienes algo más escrito.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas