Foros del Web » Programando para Internet » PHP »

Sobre 'Undefined index' y variables de sesión

Estas en el tema de Sobre 'Undefined index' y variables de sesión en el foro de PHP en Foros del Web. Una pregunta tonta, ¿por qué con esto... Código PHP: if ( $_SESSION [ 'variable' ]== 1 ) {  ...me da el error: Notice : Undefined index: variable ...
  #1 (permalink)  
Antiguo 25/11/2010, 05:18
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 3 meses
Puntos: 150
Pregunta Sobre 'Undefined index' y variables de sesión

Una pregunta tonta, ¿por qué con esto...

Código PHP:
if ($_SESSION['variable']==1) { 
...me da el error:

Notice: Undefined index: variable in archivo.php on line 134

Y sin embargo con...

Código PHP:
if (isset($_SESSION['variable']) and $_SESSION['variable']==1) { 
...no me sale el error. ¿haceis vosotros todas las comprobaciones de variables de sesion de esta 'doble' forma?

Por cierto, invirtiendo el orden tambien da el error:

Código PHP:
if ($_SESSION['variable']==and isset($_SESSION['variable'])) { 
  #2 (permalink)  
Antiguo 25/11/2010, 05:43
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 3 meses
Puntos: 202
Respuesta: Sobre 'Undefined index' y variables de sesión

En el primer caso te da error porque esa session no existe.

En el segundo caso no da error porque evaluas la condició que exista y además sea uno. Al no existir no te va a dar error.

En el tercero presupongo que al entrar en el if evalua primero si es = a 1 que es lo que está antes y da error aunque después pongas el isset

En cuanto a comprobarlo haciendo el isset a una variable session; sí.
Yo al menos lo hago siempre... primero vara evitar errores, segundo para comprobar que todo está ok y tercero porque puede no haber sessión, haber caducado, etc.

Numeré demasiado.

Un saludo.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 25/11/2010, 05:47
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 3 meses
Puntos: 150
Respuesta: Sobre 'Undefined index' y variables de sesión

Eso quiere decir que PHP ni entra a evaluar el $_SESSION['variable']==1 del segundo caso ¿es asi?
  #4 (permalink)  
Antiguo 25/11/2010, 05:56
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 3 meses
Puntos: 202
Respuesta: Sobre 'Undefined index' y variables de sesión

Cita:
Iniciado por Vun Ver Mensaje
Eso quiere decir que PHP ni entra a evaluar el $_SESSION['variable']==1 del segundo caso ¿es asi?
¿Como va evaluar la variable? Primero no existe y no es necesario mirar el resto del IF con un AND pues ya una de la condición es falsa.

if(FALSE & TRUE) = FALSE
if(TRUE & FALSE) = FALSE
if(FALSE & FALSE)= FALSE

No entra ni a la fuerza
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(

Última edición por IEKK; 25/11/2010 a las 06:09
  #5 (permalink)  
Antiguo 25/11/2010, 06:49
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 3 meses
Puntos: 150
Respuesta: Sobre 'Undefined index' y variables de sesión

A eso me refería, a si el interprete PHP ni siquiera entra a evaluarlo, gracias!

Etiquetas: index, sesión, undefined, variables
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 15:15.