Ver Mensaje Individual
  #5 (permalink)  
Antiguo 11/02/2003, 13:51
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si usas session_register() .. los "registros" de las variables de sesion que vas a usar .. usando register_globalas a ON los puedes tener agrupados al principio de tu script (bajo el session_start() ...)

Done quieras leer el valor de una variable de session NO has de hacer session_register() .. pues con eso la estas volviendo a "registrar" con el valor q tenga .. en ese script (si está definida .. el q corresponda y si no lo está pues NULL ..)

Para leer una variable de sesion registrada tan solo tienes que hacer:

<?
session_start(); // Inicio uso de session.
echo $nombre_variable_sesion;
?>


Pero desde ya te digo (y si revisas las FAQ's veras mas detalles) .. que NOOOO debes leer variables de sesion asumiendolas GLOBALES! .. debes accederlas a ellas via sus arrays asociados ..

Minimo:
$HTTP_SESSION_VARS['nombre_variable_sesion'];

Y si usas PHP 4.1.x en adelante ya puedes usar: $_SESSION['variable_session'] tanto para registrarla (sin usar session_register() ..) como para leer su valor como si de un array cualquiera se tratase ...

El Uso del "buffer" .. así tal cual lo tienes no le veo mucho sentido .. en tal caso si existiera algo de HTML antes de los session_start() .. o de los header() deberias usarlo .. Usar el buffer de salida así sobre-carga el servidor si no es realmente necesario su uso .. Aprende a diseñar bien una aplicación q use cabeceras (header) o sessiones y optimizaras el funcionamiento de tus scripts y servidor.

Otro detalle ..
Si en una variable de sesion te guardas un "nombre" .. y siempre q inicie la session va a existir esa variable . pues la defines en la sesion .. Ese "flag" (bandera, estado) de tu variable de sesion $autentificado .. no tiene mucho sentido .. Pues tan solo con ver si esa variable de sesion $nombre y/o $nivel .. sobraría para chekear si existe la session con tus variables.

Te recomiendo q leas el manual de php en el tema de sessiones y las FAQ's donde veras ejemplos de usos de sessiones basicos y sobre todo revisa la FAQ q habla sobre register_globals ..

Un saludo,

pd: .. En PHP es muyyyy importante las versión completa del mismo .. decir "PHP 4" es muyyy generico .. hay muchos cambios entre un simple PHP 4.1 y 4.3 .. ademas q hay a su vez mas sub-versiones 4.2.3 ... 4.3.0 ... etc