Archivo de la categoría: Desarrollo web

Indentar XML con PHP

Trabajar con archivos XML en PHP es realmente cómodo gracias a SimpleXML. Por desgracia los archivos .xml que genera no son «human-readable». En el caso de necesitar consultar algún dato manualmente en el archivo .xml, nos encontraremos con que no cuenta con saltos de línea y por extensión está sin indentar.

Para solucionar este problema he usado esta pequeña función que se encarga de formatear un archivo XML.

function formatXml($archivoXml) {
    $doc = new DOMDocument();
    $doc->preserveWhiteSpace = false;
    $doc->formatOutput = true;
    $doc->load($archivoXml);
    $doc->save($archivoXml);
}

Waiting for Xdebug session en Eclipse

Tras la instalación y configuración de Xdebug  para el IDE Eclipse PDT, me encontré que a la hora de lanzar el debug de una aplicación PHP el debug no se llevaba a cabo. El proceso permanecía en el 57% con el mensaje «Waiting for Xdebug session«.

Dicho error es producido por la configuración por defecto de java en Debian. Al comprobar los servicios a la escucha, el puerto 9000 (eclipse) está escuchando sobre ipv6:

netstat -anp -t tcp | grep 9000
la salida de netstat nos devuelve:

tcp6 0 0 :::9000 :::*  LISTEN  4390/java

Para solucionar dicho problema será necesario  modificar el siguiente archivo:

/etc/sysctl.d/bindv6only.conf

Localizar la siguiente línea:

net.ipv6.bindv6only = 1

sustituirla por esta que sigue:

net.ipv6.bindv6only = 0

a continuación ejecutar:

sysctl -p /etc/sysctl.d/bindv6only.conf

por último reiniciar Eclipse.

Presentando Paprica.es

Ya está online la nueva página web del Restaurante Paprica de Lugo, desarrollada por mi compañero Alberto Montes y yo. Alberto se encargó del diseño gráfico y yo de la programación. Por un lado buscamos que fuese sencilla al uso y elegante a la vista; y por otro lado que contase con una administración a medida.

Para ello echamos mano de XHTML (tableless)+CSS para lo visual y PHP+MySQL para la gestión de los contenidos. Siempre teniendo presentes los estándars y compatibilidad con navegadores.

Restaurante Paprica

Espero que nuestro proyecto actual resulte igual de satisfactorio que paprica.es tanto personal como profesionalmente.

Configurar codificación UTF-8 en apache+mysql+php

A la hora de empezar un proyecto web, una de las primeras cosas a tener en cuenta debería ser la elección de la codificación de los documentos y datos. Hoy en día el estándar podría decirse que es UTF-8, la manera actuar para configurar correctamente nuestra codificación UTF-8 en nuestros proyectos php+mysql podría ser la siguiente:

1. Configuración de UTF-8 en apache

En caso de no contar con acceso a la configuración de apache, lo cual es común si usamos hosting de terceros, la codificación la definiremos en el archivo .htaccess del directorio raiz de nuestra web. Añadimos la siguiente línea en el archivo .htaccess:

AddDefaultCharset utf-8

2. Configuración de UTF-8 en mysql

En phpmyadmin deberemos configurar nuestras tablas con cotejamiento utf8_spanish_ci.

3. Configuración de UTF-8 en consultas a mysql desde php

Después de hacer el «mysql_select_db» añadir la siguiente función:

mysql_query("SET NAMES 'utf8'");

4. Configuración de UTF-8 en html

En el head añadimos lo siguiente:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

5. Configuración de UTF-8 en nuestro editor de texto

Por último y no por ello menos importante, debemos configurar adecuadamente el editor que usemos para escribir nuestro código.