Foros del Web » Programando para Internet » PHP »

Dudas con el manejo de SESSION en PHP

Estas en el tema de Dudas con el manejo de SESSION en PHP en el foro de PHP en Foros del Web. Saludos colegas! mE surgieron unas dudas con lo de las sessions en PHP. 1.- Como puedo establecer el tiempo de vida de una Session? 2.- ...
  #1 (permalink)  
Antiguo 06/09/2004, 12:34
Avatar de antihem  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 227
Antigüedad: 20 años
Puntos: 0
Dudas con el manejo de SESSION en PHP

Saludos colegas!

mE surgieron unas dudas con lo de las sessions en PHP.

1.- Como puedo establecer el tiempo de vida de una Session?
2.- Como se usa el session destroy?
3.- Tengo que inciiar el session_start() siempre hasta arriba de la pagina donde manejare las sessiones?.

Bueno, por el momento esas son mis dudas, y sin mas por el momento muchas gracias por su tiempo!

See ya!
__________________
- -
:neurotico eso fue un php warning ?
creo q si... :golpeado:
  #2 (permalink)  
Antiguo 06/09/2004, 13:24
Avatar de Edypu  
Fecha de Ingreso: octubre-2003
Ubicación: La Paz - Bolivia
Mensajes: 394
Antigüedad: 20 años, 6 meses
Puntos: 1
visita las FAQs ahi te explican paso a paso sobre sessiones


dale clic al link http://www.forosdelweb.com/f18/indice-faqs-php-108208/


salu2

Última edición por Edypu; 06/09/2004 a las 13:25 Razón: error ortográfico
  #3 (permalink)  
Antiguo 06/09/2004, 14:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
1) .. lo define: session.gc_maxtimelife .. (como directiva de configuración de php.ini) pero, .. no es "normal" manejar ese tiempo de expiración en una sesión haciendolas todas que expiren al salir de tu aplicación (al cerrar la última ventana de tu sitio) .. Las sesiones se usan para mantener datos entre un flujo de "scripts/pantallas" no tanto para mantener por tiempo un dato como puede ser con el uso de cookies.

2) En www.php.net/session_destroy te indica como tienes que hacerlo.

3) Si, es necesario que siempre antes de acceder a una variable de sesión la "inicies o continues" usando session_start() antes de cualquier acceso/modificación/creación de una variable de sesión.

Un saludo,

PD: Se te olvida un tema muyyy importante sobre sesiones: EL SID .. revisalo en www.php.net/sesssion (o usa el buscador del foro .. se habla muy amenudo de esto).
  #4 (permalink)  
Antiguo 07/09/2004, 08:31
Avatar de antihem  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 227
Antigüedad: 20 años
Puntos: 0
eso quiere decir, que mientras yo use session_start() en las paginas donde manejare estas, la session se mantendra viva?

Tengo entendido que el SID es la ID de la session vdd?.
segun se guarda en una carpeta temporal y que es relativamente facil sacar provecho de eso... gracias por la sugerencia Cluster!
__________________
- -
:neurotico eso fue un php warning ?
creo q si... :golpeado:
  #5 (permalink)  
Antiguo 07/09/2004, 12:25
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
eso quiere decir, que mientras yo use session_start() en las paginas donde manejare estas, la session se mantendra viva?
No exactamente .. lo que indica esa función es que seguiras usando una sesión válida o se creará una nueva.

El "SID" expira (y lo determina: session.gc_maxtimelife en tu php.ini) así que si el SID es pasado al estado "garbage" (basura .. listo para ser borrado) cuando hagas un "session_start()" al no exister un SID válido . .esta función creará uno nuevo y por ende perderas los datos que tenías en la sesión anterior. Es lo que sucede cuando no propagas el SID correctamente.

EL "SID" es el ID de la sesión (+nombre) que identifica la sesión como única y asocia al "cliente" (que la creó) con el archivo que se generó en el servidor (de mismo nombre o parte).

Un saludo,
  #6 (permalink)  
Antiguo 08/09/2004, 07:29
Avatar de antihem  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 227
Antigüedad: 20 años
Puntos: 0
y que fue lo q dije yo?.

Me referia a que si, en pagina1 creo una sesion.
y en pagina2 usando el session_start() la mando llamar la sesion que se creo en pagina1, esta se mantendra viva, no?.
__________________
- -
:neurotico eso fue un php warning ?
creo q si... :golpeado:
  #7 (permalink)  
Antiguo 08/09/2004, 10:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En ambas "pagina1 y 2" tienes que usar session_start() .... y propagar el SID: ya sea por el URL (tu a mano o dejas a PHP que lo haga automáticamente) o en cookies. Eso es lo que "mantendrá viva la sesión" (y tendras que tener encuenta que las sesiones expiran también y lo define la directiva que más arriba comenté).

Ejemplo:
Si propagas el SID en cookies y en una página "te olvidas" de usar sesion_start() .. La sesión no la perderas; la podrás recuperar cuando uses session_start(). Pero en ese script que no usastes "session_Start()" no podrás ver el valor de tus variables de sesión que en otro script creastes.

Un saludo,
  #8 (permalink)  
Antiguo 08/09/2004, 13:30
Avatar de antihem  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 227
Antigüedad: 20 años
Puntos: 0
entonces, se pueden usar cookies en conjunto con las sessiones...
gracias cluster!
__________________
- -
:neurotico eso fue un php warning ?
creo q si... :golpeado:
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 23:01.