Ver Mensaje Individual
  #11 (permalink)  
Antiguo 06/06/2005, 06:45
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Pues .. no, no es un impedimento .. pero ese no es el valor real de la variable de sesión (el valor que tiene actualmente), sino el que le vas a dar y que no quedará registrado hasta que termine la ejecución de tu script y PHP la almacene en el servidor .. Si ese es la teoría de como funciona PHP .. por claridad del código nunca accedo a esa variable en esa situación:

Si tenemos:

Código PHP:
<?
session_start
();
// damos un valor a una variable de sesión
$_SESSION['variable_sesion']=$_GET['variable'];

// no hago:
echo $_SESSION['variable_variable'];

// sino:
echo $_GET['variable'];
// que es la variable que realmente está trabajando este script en este momento.

// o a lo sumo hago la propuesta anterior: (al principio del script)
if (isset($_SESSION['variable_sesion']){
   
$objeto=$_SESSION['variable_sesion'];
} else {
   
$objeto=new objeto();
}

//uso objeto:
$objeto->metodo();
// altero objeto (variables):
$objeto->altera_valores($_GET['variable']);
// vuelco objeto a sesión nuevamente al terminar el uso del objeto .. sea así o con un método de la própia classe.
// antigüamente con hacer session_register($objeto) al principio del código podíamos trabajar para leer/dar valor a dicha variable de sesión en cualquier punto del código .. ahora:
$_SESSION['variable_sesion']=$objeto;
// si no usamos médodos que alteren las variables del mismo .. podríamos omitir este punto. También depende como se trabaje el objeto .. si el mismo registra ya sus variable en la sesión o no ...
?>
Lo que propongo sobre "recargar" la página o bien leer dicha variable de sesión en la próxima petición al servidor simplemente es para obtener el valor real de la sesión en curso, de esta forma también se vé si se llegó a crear en caso de algún fallo tipo: falla de propagación del SID, de creación de la sesión en sí .. etc.

Un saludo,