CONFIGURAR PHP PARA MOSTRAR ERRORES

Por defecto los PHP no nos muestra los errores por defecto, para poder configurarlo y desplegarnos los errores, necesitamos modificar un archivo que se llama: PHP.ini y su ubicación varia dependiendo el Sistema Operativo que estes utilizando, lo explicaré para hacerlo en Ubuntu 13.04, para eso seguiremos los siguientes pasos:

1.- Abrir una Terminal y escribir:

:~$ cd /etc/php5/apache2/

Esto nos permitirá ir a la carpeta donde se encuentra nuestro archivo de configuración llamado php.ini, para poder asegurarnos vamos a revisar lo que se encuentra en esa carpeta utilizando el comando de linux “ls”:

:~$ ls

conf.d  php.ini

Como podemos apreciar el comando nos despliega los archivos que tenemos en esa ruta, y en esa ruta se encuentra php.ini, para poder modificar nuestro documento de configuración para poder desplegar los errores, pondremos el siguiente comando:

:~$ sudo gedit php.ini

[sudo] password for user:

Después de que proporciones la clave de administrador, Este comando nos abrirá el documento para poder modificar sus variables, buscamos la variable que se llama:

display_errors = Off

Lo modificas y quedará asi:

display_errors = On

Guardas el archivo o le pones el shortcut “ctrl-s” y lo cierras.

2.- Reiniciar tu PC para que hagan efecto los cambios en PHP.

3.- Para Probar nuestro cambio, vamos a crear un archivo:

en la terminal vamos a poner:

:~$ cd /var/www

:/var/www$ touch prueba.php

:/var/www$ gedit prueba.php

Después se va a abrir un procesador de texto donde vamos a escribir lo siguiente:

<?

php phpinfo();

?>

Utilizamos nuestro shortcut “Ctrl-s” y cerramos.

4.- Abrir tu explorador de Internet:

poner la direccion: 

http://localhost/prueba.php/

y buscar la variable display_errors:

 

Si como se muestra en la imagen el display_errors tiene un On, es porque tu PHP ya mostrará los errores que necesitas. Esta variable solo despliega los errores que ocurren en la ejecución de un script.

Si necesitas desplegar algún otro tipo de error están los siguientes tipos y la forma de modificar es el mismo procedimiento anteriormente explicado.

TIPOS DE ERRORES Y VALORES QUE LLEVAN

error_log = 

Especifica el fichero donde se registrarán los errores generados por los scripts. Si asignamos el valor especial syslog, los errores se envían al registro de errores del sistema: en UNIX los recogerá el dominio syslogd y en Windows, será el registro de eventos.

error_reporting=

Indica el nivel de detalle de errores que queremos obtener. El valor que recibe esta directiva se conforma con las siguientes constantes.

E_ALL                                Todos los errores y avisos.

E_ERROR                         Errores graves en tiempo de ejecución.

E_WARNING                     Avisos en tiempo de ejecución.

E_PARSE                           Errores de compilación.

E_NOTICE                          Advertencias en tiempo de ejecución (suelen provenir los                                                       errores semánticos del tipo,por ejemplo, de usar una variable                                                 directamente sin haber sido previamente inicializada).

E_CORE_ERROR             Errores graves que ocurren en el arranque de PHP.

E_CORE_WARNING         Avisos que ocurren en el arranque de PHP.

E_COMPILE_ERROR        Errores graves de compilación. 

E_COMPILE_WARNING    Avisos de errores de compilación.

E_USER_ERROR               Mensajes de error generados por el usuario.

E_USER_WARNING          Mensajes de aviso generados por el usuario.

E_USER_NOTICE              Mensajes de advertencia generados por el usuario.

Asi si queremos mostrar solamente los errores escribiremos:

error_reporting=E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR

Y para mostrar todos los errores excepto, las advertencias

error_reporting=E_ALL & ~E_NOTICE

html_errors=Off

Incluye etiquetas HTML en los mensajes de error. En el nuevo formato de los errores se puede pinchar en ellos para ser reconducido a una página donde se describa dicho error.

docreft_root=

El  nuevo formato de errores contiene una referencia a una pagina que describe el error cometido. En esta directiva se indica el lugar donde podemos conseguir esta información (el nombre debe acabar con el carácter “/”). Valores válidos pueden ser: /manual/ en caso de que tengamos una copia de él en dicho directorio, o http://unsitio.com/manual/es/, si es que estuviera en dicho URL.

docref_ext=

Indica la extensión de los ficheros. El valor introducido debe comenzar con el carácter “.” (por ejemplo, .html).

log_errors=

Indica si los errores generados por los scripts deben ser registrados en el registro del servidor (esta opción es dependiente del servidor).

track_errors=Off

Si esta habilitada, el ultimo mensaje de error lo almacenará en la variable global $php_errormsg.

 

REFERENCE:

Título: PHP5 A Tráves de Ejemplos
Autor: Abraham Gutierrez
Editorial: RA-MA
ISBN: 970-15-1083-6
No. Páginas: 518-520
Edición: Primera Edición, 2005.
Madrid España
Tema: Modificar el Archivo de configuración PHP.ini

Sección D03 Programación Web Mayra Andrea García Martínez.