Foros del Web » Programando para Internet » PHP »

Notice: Undefined index: fallo

Estas en el tema de Notice: Undefined index: fallo en el foro de PHP en Foros del Web. Hola de nuevo les cuento mi problema, primeramente cree una aplicación en appserver la cual funcionaba bien, después por equis causa use xampp pero al ...
  #1 (permalink)  
Antiguo 20/07/2013, 02:05
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Notice: Undefined index: fallo

Hola de nuevo les cuento mi problema, primeramente cree una aplicación en appserver la cual funcionaba bien, después por equis causa use xampp pero al momento de correr la aplicacion me aparece esto:
Notice: Undefined index: fallo in . . .

Quisiera saber por que, este es mi codigo donde marca error:
Código PHP:
<?php $sesiones=array($_SESSION['fallo'],$_SESSION['full']);

session_destroy() or die("Error");
unset(
$sesiones);?>
  #2 (permalink)  
Antiguo 20/07/2013, 02:17
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Notice: Undefined index: fallo

Ese error es por intentar acceder a una parte del array que no existe... o sea la key no existe para ese array ... ejemplo:

$_SESSION['fallo'] puede no existir ... asi no puedes formar un array de algo que no existe ($_SESSION['fallo'])
__________________
Salu2!
  #3 (permalink)  
Antiguo 20/07/2013, 02:24
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Notice: Undefined index: fallo

Gracias italico por tu pronta respuesta, pero lo hacia para quitar varias variables de session y también en este código me marca el mismo error :(

Código PHP:
if($_SESSION['fallo'][26]=="carrera"){$x="carrera";}elseif($_SESSION['fallo'][26]=="universidad"){$x="universidad";}elseif.... 
  #4 (permalink)  
Antiguo 20/07/2013, 02:27
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Notice: Undefined index: fallo

1) session_start() esta antes en ese codigo ?

2) Cuando quieras asegurarte existe un indice pregunta asi: (isset($_SESSION['fallo']) ? $_SESSION['fallo'] : null) ... con eso devuelvo NULL sino existe.

Entonces...

<?php

session_start(); // siempre antes
$sesiones=array((isset($_SESSION['fallo']) ? $_SESSION['fallo'] : null),$_SESSION['full']);


Igualmente no puedes preguntar si hay algo dentro de $_SESSION['fallo'] si no existe o es NULL
__________________
Salu2!
  #5 (permalink)  
Antiguo 20/07/2013, 02:30
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Notice: Undefined index: fallo

Si, esta al principio del codigo.
  #6 (permalink)  
Antiguo 20/07/2013, 02:36
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Notice: Undefined index: fallo

Vale... pero mira... ten en cuenta esto:

1) En general no puedes meter o sacar nada o incluso leer un valor sino sabes si existe el array .. asi en tu caso array($_SESSION['fallo'] o $_SESSION['full'] podrian no existir

2) $sesiones=array($_SESSION['fallo'],$_SESSION['full']) no tiene sentido

Explicame para que haces eso ?


Mas bien... preguntate si hay sessiones y si quieres si existen $_SESSION['fallo'] o $_SESSION['full'] antes de usarlos:

Código PHP:
IF (isset( $_SESSION['fallo'])) {
      
// algo

__________________
Salu2!
  #7 (permalink)  
Antiguo 20/07/2013, 02:40
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Notice: Undefined index: fallo

ok ya entendi n.n y gracias de nuevo x tu explicacion, $sesiones=array($_SESSION['fallo'],$_SESSION['full']) esto segun yo lo hago para matar sesiones sin repetir tanto sesion_destroy.... y esas sesiones solo se activan cuando hay un error de inserción.
  #8 (permalink)  
Antiguo 20/07/2013, 02:53
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Notice: Undefined index: fallo

Para eliminar todas las variables de sesión no necesitas recorrerlas de una por una, ni asignarlas a otra variable, basta con alguna de estas dos opciones:

Código PHP:
Ver original
  1. session_destroy(); // Elimina todas las variables de sesión
  2.  
  3. $_SESSION = array(); // También las elimina todas
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: fallo, index, notice, undefined
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 13:47.