bueno lo he arreglado pero no entiendo pq hay veces q puedo hacer
<p><? $_SESSION['a']->getNombre() ?></p> y otras no y tengo q hacerlo con echo
pq puede ser
saludos
|
|
#1 (permalink) |
![]() Fecha de Ingreso: mayo-2005
Mensajes: 330
|
Problemilla con sesion
bueno lo he arreglado pero no entiendo pq hay veces q puedo hacer <p><? $_SESSION['a']->getNombre() ?></p> y otras no y tengo q hacerlo con echo pq puede ser saludos
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros |
|
|
|
|
|
#2 (permalink) |
![]() Fecha de Ingreso: mayo-2005
Mensajes: 330
|
Otra cosa mas cuadno en una sesion guardo un objeto y luego actualizar un atributo de ese objeto como lo hago lo intento con metodos get y set y no lo hace :(
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros |
|
|
|
|
|
#3 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.436
|
Si no indicas el código de tu objeto .. es complicado ver como funciona para ver si lo estás usando bien o no ...
Se supone que tu usaras tu sesion (variable) como "transporte" .. nada más .. Así que (por mi parte yo hago): Código PHP:
Pero, .. en resumen .. sólo te puedo indicar que las sesiones (los valores que des a las variables que crees) sólo quedan disponibles en la próxima iteracción con el servidor .. es decir .. si tu defines en un mismo flujo de un script un dato para tu variable de sesión "a" .. dicho dato no estará completamente disponible hasta que recargues la página o lo leas en otra (la sesión). Un saludo, |
|
|
|
|
|
#4 (permalink) |
![]() Fecha de Ingreso: mayo-2005
Mensajes: 330
|
los metodos set y gtet q te he comentado tienen la misma funcion q ls set y get de java voy a probar con eso q no se me habia ocurrido un saludo
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros |
|
|
|
|
|
#5 (permalink) |
![]() Fecha de Ingreso: mayo-2005
Mensajes: 330
|
Código PHP:
el metodo setDir es este Código PHP:
zugazarte 56 BV 1B Actualizacion Realizada Volver a Menu zugazarte 56
__________________
Dios creo un equipo perfecto a los demas los lleno de extranjeros |
|
|
|
|
|
#6 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.436
|
Ya te decía que no puedes ver el valor de una variable de sesión en el mismo flujo del script .. debes recargar tu página o redireccionar para que la sesión quede con sus nuevos valores (tus variables) ..
Un saludo, |
|
|
|
|
|
#8 (permalink) |
|
Moderador PHP
![]() Fecha de Ingreso: septiembre-2003
Ubicación: Piura
Mensajes: 2.748
|
Cita:
Siempre tienes que utilizar "echo" (o similar). De otra manera no imprimirá nada. La única manera de que eso imprima algo es si el método getNombre() contiene un "echo". También existe la forma abreviada <?=$variable ?> (nota el signo "=") que es como hacer un "echo".
Iniciado por Legolas_Bilbao
bueno lo he arreglado pero no entiendo pq hay veces q puedo hacer
<p><? $_SESSION['a']->getNombre() ?></p> y otras no y tengo q hacerlo con echo pq puede ser ----------------------------------------- Sobre el otro tema: No entiendo del todo qué es lo que debería imprimir. sería bueno que pongas un poco más de código y algo como: "debería imprimir ESTO, pero imprime ESTO OTRO". Aunque, como dice Cluster, las variables no se registran verdaderamente en la sesión hasta que finaliza el script (por eso lo de la redirección o recarga). Pero eso casi nunca tiene una influencia directa durante el flujo de un script si utilizas el superglobal $_SESSION. Supongo que pasará si utilizas funciones como session_register() y luego tratas de verificar con session_is_registered()... pero esas funciones van cayendo en el desuso. Y no es tu caso. Tal vez lo que esté pasando es que no asignas $medico y $_SESSION['medico'] por referencia y estás trabajando con dos objetos distintos. Entonces actualizas uno, pero no tiene por qué verse reflejado en el otro. Para pasar por referencia utiliza el operador "&": Código PHP:
Saludos ![]() Última edición por jpinedo; 03-jun-2005 a las 13:55. |
|
|
|
|
|
#9 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.436
|
Cita:
No es necesario un refresco a la misma página .. pero ahí mismo no vas a obtener su valor real modificado (el de tu objeto que llevas en tu sesión) ... pero si que podrías ver sus nuevos valores donde linkeas:
Iniciado por Legolas_Bilbao
vamos q tras hacer eso tengo q hacer un refresco ???
un saludo echo"<a href=\"MenuMedico.php\">Volver a Menu</a><br>"; es decir .. en "MenuMedico.php" puedes ver el valor de tu variable de sesión con el método que corresponda para extraer ese dato e instanaciando el objeto como te he comentado en el código anterior sobre ver si existe tu variable de sesión .. se continua su usu y si no está se instancia nuevamente (en tal caso . .comprueba que realmente quedó registrada tu varaible de sesión .. sino, el problema lo tienes con las sesiones y su propagación del SID más que con tu própio objeto ...) Un saludo, |
|
|
|
|
|
#10 (permalink) |
|
Moderador PHP
![]() Fecha de Ingreso: septiembre-2003
Ubicación: Piura
Mensajes: 2.748
|
Cluster... no estoy de acuerdo con lo que propones. O, en todo caso, no te he entendido.
Me gustaría que pongas un ejemplo donde no se pueda leer el valor de una variable de sesión que se ha definido en el misma ejecución del script (para ilustrar mejor lo que dices). Es que no se me ocurre ninguno. O sea, para mí el hecho de que la variable no se registre en la sesión hasta que finaliza el script no es un impedimento para acceder a a su valor. Te pongo un ejemplo. Código PHP:
![]() |
|
|
|
|
|
#11 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.436
|
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:
Un saludo, |
|
|
|