Foros del Web » Programando para Internet » PHP »

Saber si session existe ???

Estas en el tema de Saber si session existe ??? en el foro de PHP en Foros del Web. Pues eso, yo tengo mi session $_SESSION['idasegurado'] Y necesito saber si existe , asi de tonto ... pero no se por que no va Si ...
  #1 (permalink)  
Antiguo 28/04/2004, 05:01
 
Fecha de Ingreso: marzo-2003
Mensajes: 90
Antigüedad: 14 años, 8 meses
Puntos: 0
Saber si session existe ???

Pues eso, yo tengo mi session

$_SESSION['idasegurado']

Y necesito saber si existe , asi de tonto ... pero no se por que no va

Si le pongo cosas como :

if ($_SESSION['idasegurado'] = "")

o

if ($_SESSION['idasegurado'] = "")

Y cosas similares no funciona ... ¿Que deberia poner?.

En asp lo hago asi , en php no se como tendria que hacerlo.

Gracias anticipadas.
  #2 (permalink)  
Antiguo 28/04/2004, 05:17
Avatar de nublar
(Desactivado)
 
Fecha de Ingreso: octubre-2003
Ubicación: Argentina - BsAs
Mensajes: 321
Antigüedad: 14 años, 2 meses
Puntos: 0
Me parece un buen método:
1.- Definir una variabe dentro de la sesion.
2.- Luego asignarle un valor a la variable.
3.- Y comparar basandote en el valor de la misma.

Saludos
  #3 (permalink)  
Antiguo 28/04/2004, 05:29
 
Fecha de Ingreso: marzo-2003
Mensajes: 90
Antigüedad: 14 años, 8 meses
Puntos: 0
Ein ... no te entendi nublar.
  #4 (permalink)  
Antiguo 28/04/2004, 08:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
En PHP igual que en su momento leistes la documentación al respecto de como trabajar con sesioens en ASP . .debes leerla para PHP y no confiar en que "sea igual" ..

www.php.net/session

Si te fijas ..

Primero debes iniciar el uso de sesiones:
Código PHP:
<?
session_start
();
y luego ahí podras comprobar si existe o no tu variable en la sesión activa (que viene determinada por el SID y si este se propagó correctamente .. pues tienes vários métodos para hacerlo)

Código PHP:
if (isset($_SESSION['variable_sesion'])){
echo 
"La sesión existe ...";
}
?> 
Y antes .. en algúna otra página (script) habras creado tu variable de sesión y pasarás a la otra página (script) que quieres validar su existencia (por un link .. por accionar un formulario en su submit .. etc). Las sesiones -solo- quedan disponibles hasta la próxima petición al servidor (llamada en un link, un formulario que haces el submit ..et) NO puedes crear una variable de sesión y .. a continuación .. en el mismo flujo del código (sin recarga de página) intentar obtener su valor .. por qué no estará ni definida ni aplicado su valor.

Todo depende como te decía del "concepto" del SID (Identificador Único de sesión) .. eso es lo que asocia tu sesión activa con el archivo que crea PHP en el servidor para la misma .. SI se pierde o se cambia .. o simplemente no se propaga (automáticamente en los links por el URL . o manualmente o en cookies) tu sesión no existirá (mejor dicho .. se creará siempre una nueva y nunca coincidirá donde "guardas" tus variables y donde pretendes leelas).

Para el tema de sessiones en PHP .. es -altamente- configurable . .así que es necesario leer y conocer las directivas (php.ini) de configuración del tema sesiones para conocer como está trabajando tu configuración de PHP actualmente .. por qué eso determinará todos los problemas que puedas tener y te obligará (salvo que lo cambies) a trabajar con sesiones de una forma u otra (principalmente el tema de la propagación del SID).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 28/04/2004, 08:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Por cierto .. el uso de los array superglobales $_SESSION (entre otras) sólo está disponible desde PHP versión 4.1.0 en adelante. (pero es recomendable que lo uses por seguridad si usas alguna versión de PHP superior o igual a la mencionada).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 07:11.