Foros del Web » Programando para Internet » PHP »

Gestión usuarios

Estas en el tema de Gestión usuarios en el foro de PHP en Foros del Web. Hola a todos, Estoy desarollando mi web y necesito gestionar permisos de usuarios. Para eso, abro una sesion con Código PHP: //empezamos la sesion session_start (); //registramos la variable de sesion ...
  #1 (permalink)  
Antiguo 15/05/2003, 04:43
Avatar de xavigu  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona (España)
Mensajes: 48
Antigüedad: 15 años
Puntos: 0
Gestión usuarios

Hola a todos,

Estoy desarollando mi web y necesito gestionar permisos de usuarios. Para eso,
abro una sesion con
Código PHP:
//empezamos la sesion
session_start();
//registramos la variable de sesion
session_register("sesion");
$session=array(); 
He pensado en pasar algunas variables como el nombre de usuario para manejar los permisos, etc.. En principio pensé en utilizar cookies pero lo he descartado porque hay mucha gente que las deshabilita (yo incluido).? Alguien sabe de otra manera de poder pasar estas variables? Agradecería mucho que he alguien me hechara un cable.

Un saludo cordial,

Xavi Garcia
  #2 (permalink)  
Antiguo 15/05/2003, 04:59
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 15 años, 1 mes
Puntos: 17
Bueno, lo primero decir que de sesiones sé lo justo, así que espero no decirte ninguna burrada:

En las sesiones, cuando las creas (y no sé si más adelante) puedes crear también unas "variables de sesión", me explico:

$HTTP_SESSION_VARS['usuario']= "nombre_que_quieras";
$HTTP_SESSION_VARS['permisos']= 10;

por ejemplo.

Otra cosa que suelo hacer (por un consejo que me dieron) es dar un nombre a la sesión antes de crearla;

session_name('nombre_de_la_sesion');
session_start();

Si necesitas algo más mira el manual de php.net, que viene todo lo relacionado con las sesiones.

Espero haberte ayudado, un saludo.
  #3 (permalink)  
Antiguo 15/05/2003, 05:13
Avatar de xavigu  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona (España)
Mensajes: 48
Antigüedad: 15 años
Puntos: 0
He vuelto ha mirar el manual de php y me ha dado el golpe de inspiración. Lo tenía delante de los ojos y no me daba cuenta.



Código PHP:
//empezamos la sesion
session_start();
//registramos la variable de sesion
# le digo que sesion es un array    
$sesion['usuario']=$HTTP_POST_VARS["user"];
session_register("sesion");
$session=array();


#en cualquier script puedo manejar la variable 
$sesion["usuario"]; 
Un saludo,

Xavi Garcia

Última edición por xavigu; 15/05/2003 a las 05:24
  #4 (permalink)  
Antiguo 15/05/2003, 05:33
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 15 años, 1 mes
Puntos: 17
Sí, más o menos es eso, sólo que yo utilizo HTTP_SESSION_VARS['usuario'], que para el caso viene a ser lo mismo.

Lo que no uso es lo de:

session_register("sesion");
$session=array();

Y le suelo poner un nombre a la sesión (aunque no es imprescindible)

Saludos.
  #5 (permalink)  
Antiguo 15/05/2003, 05:36
Avatar de xavigu  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona (España)
Mensajes: 48
Antigüedad: 15 años
Puntos: 0
Hola de nuevo,

Muchas gracias por la ayuda que me han prestado

Un saludo,

Xavi Garcia
  #6 (permalink)  
Antiguo 15/05/2003, 10:33
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Si usan sesiones y PHP 4.1.x o superior .. deberian usar el array superglobal $_SESION y no asumir las variables de sesion como "globales" (como en el ejemplo de uso que puso xavigu) ...

A todo esto .. fijate bien como estas intentando propagar el SID (IDentificador Único de sesión) tanto en tu programación como en tu configuración de PHP .. Si dices que no aceptas cookies .. asegurate que no vas a propagar el SID en una cookie (session.use_cookies lo define en tu php.ini ..) y sobre el resto de como propagar el SID .. revisalo en el manual y hazlo manualmente o fuerza a PHP para que lo haga automático.

Si usas $_SESSION para registrar un array .. deberas de serializarlo y des-serializarlo (con funciones serialize() y unserialize) .. Es lo mas serguro registar y leer variables de sesión usar el array superglobal $_SESSION. En las FAQ's de este foro se habla del tema.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 16/05/2003, 06:24
Avatar de xavigu  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona (España)
Mensajes: 48
Antigüedad: 15 años
Puntos: 0
Tomo nota de todo lo que me has indicado porque la parte de sesiones la tengo todavía un poco verde. Muchas gracias por toda la información facilitada


Un saludo cordial,

Xavi Garcia
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 11:05.