Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/07/2013, 03:32
Avatar de pzin
pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Respuesta: ¿Porque me pasa esto?

No es un error, sólo un aviso. Por eso funciona.

Según el manual:
Cita:
Depender del valor predeterminado de una variable sin inicializar es problemático al incluir un archivo en otro que use el mismo nombre de variable. También es un importante riesgo de seguridad cuando la opción register_globals se encuentra habilitada. Un error de nivel E_NOTICE es emitido cuendo se trabaja con variables sin inicializar, con la excepción del caso en el que se anexan elementos a un array no inicializado. La construcción del lenguaje isset() puede ser usada para detectar si una variable ya ha sido inicializada.
Entonces lo suyo es declarar las variables o arrays antes de referenciarlos, o al menos usar isset() para comprobar que existen.

Si antes no te ocurría y ahora si, será porque se cambió la configuración de PHP para mostrar E_NOTICE. Si quieres evitarlo, puedes declarar en tu fichero:

Código PHP:
Ver original
  1. error_reporting(E_ALL ^ E_NOTICE);

Más info: http://www.php.net/manual/es/errorfu...figuration.php

Como ves el propio manual recomienda tenerlos activados, al menos en el entorno de desarrollo. En producción luego realmente no interesará mucho.