Foros del Web » Programando para Internet » PHP »

Dos Sesiones Dos Entradas

Estas en el tema de Dos Sesiones Dos Entradas en el foro de PHP en Foros del Web. Tengo dos sesiones una llamada usuario y otra admin al entrar en sesiones.php depende de la sesion se entraria en usuario.php o en admin.php depende ...
  #1 (permalink)  
Antiguo 04/02/2004, 08:32
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 4 meses
Puntos: 1
Dos Sesiones Dos Entradas

Tengo dos sesiones una llamada usuario y otra admin al entrar en sesiones.php depende de la sesion se entraria en usuario.php o en admin.php depende de la sesion.

sesiones.php
Código PHP:
<?php

    
if (!isset($_SESSION["usuario"])) {
             
header("Location: ../cliente/usuario.php");  
            exit;
     }else {
    if (!isset(
$_SESSION["admin"])) {
             
header("Location: ../admin/admin.php");  
            exit;
     } }
?>
GRACIAS POR TODO
  #2 (permalink)  
Antiguo 04/02/2004, 08:51
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16


De nada, chico.

La verdad es que no entiendo cual es tu duda. Pero si ese es tu codigo, el titulo de tu pregunta esta mal. Solo tienes una sesion, que puede contener varias variables de sesion, en este caso "usuario" o "admin" o ambas a la vez. $_SESSION es un array con todas las variables que tiene esa sesion.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 04/02/2004, 09:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Y .. por qué no guardas valores en las variables de sesión?

Ejemplo:

Si es administrador .. creas:
Código PHP:
$_SESSION['tipo_usuario']="Adminstrador"
si es usuario ... creas
Código PHP:
$_SESSION['tipo_usuario']="usuario"
De esa forma .. podrías usar un switch() tipo:

Código PHP:
switch($_SESSION['tipo_usuario']){
case 
"usuario":
   
header ("Location: nose.tal");
   exit;
break;
case 
"administrador":
   
header ("Location: nose2.tal");
   exit;
break;
default:
   
header ("Location: problemasyerrores.tal");
   exit;

Y si todo esto vá relacionado con el perfil de un usuario (objeto ..)

Podrías usar un array bidimensional tipo:

Código PHP:
$_SESSION['usuario']['nombre'] = "Fulanito de tal";
$_SESSION['usuario']['nick'] = "nose";
$_SESSION['usuario']['tipo_usuario'] = "usuariol"
Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 04/02/2004 a las 09:46
  #4 (permalink)  
Antiguo 04/02/2004, 12:52
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 4 meses
Puntos: 1
Nada o no me sale que es lo mas probable o no me he explicado bien, lo intento de nuevo:

a.- Tengo varios Link unos para dejar entrar a usuarios y otros a administrador

b.- Los permisos los gestiono desde dos ficheros sesion_adm.php sesion_user.php

sesion_user.php:
Código PHP:
<? session_start();
    if (!isset(
$_SESSION["usuario"])) {
             
header("Location: ../autentificacion/seguridad.php");  
            exit;
     }
?>
sesion_adm.php:
Código PHP:
<? session_start();
    if (!isset(
$_SESSION["adminis"])) {
             
header("Location: ../autentificacion/seguridad.php");  
            exit;
     }
?>
c.- seguridad.php comprueva en la BD el Usuario y la Contraseña, dependiendo de que login y pass entra en una u otro sesion (usuario,adminis) una vez abierta la sesion los ficheros anteriores dejan o no entrar segun la sesion que este abierta.

Pregunta o cuestión

Tengo sesion_adm.php sesion_user.php para dejar paso y quiero fundir los dos en uno llamado sesion.php para hacer dedes un link dos entradas distintas segun que sesion este abierta, al hacer clic y entrar en sesion.php existiran dos posibilidades distintas. espero que ahora este mas claro.

GRACIAS, no se que haria sin vosotros
__________________

diseño web

Última edición por concric; 04/02/2004 a las 13:15
  #5 (permalink)  
Antiguo 04/02/2004, 13:05
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
(antes de intentar usar $_SESSION .. se ha de iniciar el uso de sesiones con: session_start() .. ¿Lo estas usando?)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 04/02/2004, 13:11
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 4 meses
Puntos: 1
Si los puntos a b c me funcionan perfectamente.

Yo pienso que sera algo asi

Código PHP:
<?php session_start();

// si la sesion es usuario entra en usuario.php
// si no es usuario salta al else y dime si es adminis

    
if (!isset($_SESSION["usuario"])) {
             
header("Location: ../cliente/usuario.php");  
            exit;
     }else {

// si la sesion es adminis entra en admind.php

    
if (!isset($_SESSION["adminis"])) {
             
header("Location: ../admin/admind.php");  
            exit;
     } }
?>
__________________

diseño web

Última edición por concric; 04/02/2004 a las 15:44
  #7 (permalink)  
Antiguo 04/02/2004, 15:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Ahí en ese código te falta iniciar la sesión con session_start() al principo de ese código ... o antes de la primera llamada a un $_SESSION que hagas ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 04/02/2004, 15:45
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 293
Antigüedad: 20 años, 4 meses
Puntos: 1
Ya esta mefunciona
Código PHP:
<? session_start();
    if (isset(
$_SESSION["SESSION1"])) {
             
header("Location: ../carpeta/cliente.php");  
            exit;
        }else{
     if (isset(
$_SESSION["SESSION2"])) {
             
header("Location: ../carpeta/admin.php");  
            exit;
        }else{
    if (!isset(
$_SESSION["SESSION1"]["SESSION2"])) {
             
header("Location: ../carpeta/seguridad.php"); 
             exit;
     }
        }
             }
?>
GENIAL
__________________

diseño web

Última edición por concric; 04/02/2004 a las 15:56
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 04:13.