Zend Framework

Una de las varias APIs que ofrece Zend Framework es Zend_Acl, que ofrece el servicio para controlar las autorizaciones y permisos respecto a los roles y los recursos. Después de horas haciendo pruebas y moldeandola, ahora tengo un sistema de autorización eficaz, facilmente personalizable y muy práctico.

Leer el resto de la entrada »

HTTP Portada OREILLY

Siempre viene bién tener a mano este listado de ejemplos de como usar la función header de PHP. Esta función permite modificar las cabeceras que envía el servidor al navegador. Estas cabeceras, que siguen el protocolo HTTP, es la primera información que recibe el navegador en cada petición que realiza, antes que el contenido del fichero.

La función header permite informar al navegador: del código de estado HTTP, la codificación, del tipo de archivo que se envía, … También permite hacer una redirección a otra URL. Leer el resto de la entrada »

Compiz Fusion LogoMe ha costado tiempo encontrar la manera de configurar correctamente Ubuntu para que trabaje con la tarjeta gráfica Intel GMA500. Desde que me compré el Asus EEEPC 1101HA, que no he podido cambiar la resolución debido a esto, y el sistema operativo me funcionaba lento en general.

Buscando en foros y en blogs, haciendo pruebas y reinstalando Ubuntu, al final encontré una manera de configurarlo todo correctamente, incluso Compiz. Os detallo los pasos.
Leer el resto de la entrada »

Zend FrameworkÚltimamente en el trabajo estoy aprendiendo Zend Framework, y he tenido que estudiar el componente Zend_Auth de la librería. En pocas palabras, se encarga de la autentificación, es decir, la parte de identificar al usuario. Hay que marcar que la autenticación no es lo mismo que la autorización, que se encarga de los privilegios y permisos (de esto miraré de hablar en otra entrada, sobre Zend_Acl).

Primero, necesito explicar que estamos creando un plugin que se encarga de comprobar cada petición, que el usuario este autentificado. Como plugin, estará en la carpeta application/plugin. Se llamará CheckAccess, extiende la clase Zend_Controller_Plugin_Abstract, y la he convertido en una clase singleton, para utilizarla desde los controladores sin necesidad de volverla a instanciar.

Leer el resto de la entrada »

MySQL AvanzadoExistes dos tipos de campo en MySQL que siempre los he visto iguales. He investigado un poco en sus diferencias y lo que voy a comentar sirve tanto para MySQL 5.1 como MySQL 5.4.

Tanto ENUM como SET, sirven para determinar los valores que puede tener un campo de una tabla, es decir, puedes determinar que en un campo solamente pueda contener valores de una lista definida por ti. La principal diferencia es que un campo del tipo ENUM siempre contiene sólo un valor de la lista; y un campo del tipo SET puede contener ninguno, uno o varios valores de la lista.

Hay más características de estos dos campos de MySQL, que les hace diferenciarse y es necesario conocerlas para decidir cual es más apropiado para nuestro diseño de la base de datos.

Leer el resto de la entrada »

Dado EmailPara el trabajo, he tenido que maquetar diseños de emails. Eso a conllevado a pelearme con casi todos los clientes de correo, ya que cada uno trata los emails de manera diferente.

A la hora de maquetar o trabajar con CSS para hacer páginas web, el principal problema son los Internet Explorer, sobre todo la versión 6, que apenas cumple los estándares web. Ahora he descubierto que hay algo peor que maquetar una página web: maquetar un email. Hay muchos clientes de correo, y cada uno trata el código de los emails a su manera, haciendo complicadísimo hacer un email que se vea igual en todos los sitios posibles en los que se verá el email.

Leer el resto de la entrada »

Google RobotEste es un script visto en Informática Práctica. Su simpleza se basa en que detecta el User Agent de los visitantes, y si ve que es el robot de Google, envía un email avisando de la URL que ha visitado.

Se puede poner en cualquier parte de la página que siempre se cargue. Yo lo tengo puesto en el pie de página: edité el archivo footer.php, y justo antés de la etiqueta , inserté el siguiente código:

<?php
   if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Googlebot' ) !== false ) {
     mail('tu_direccion@correo.com',
'Aviso: Googlebot ha visitado tu web',
'El Googlebot ha visitado tu página: http://tu_dominio.com'
. $_SERVER['REQUEST_URI']);
   }
?>

Hay que cambiar la dirección de correo a la que se enviará el email, y el dominio del sitio web. El mensaje de aviso se puede personalizar y añadir más datos de la petición del robot.

El inconveniente del tema es que cuando Google esta de visita, te llegan bastantes emails.

Clonezilla LogoPara cuando quería hacer pruebas o trastear en el ordenador, pero quería tener una copia exacta del estado de todo el ordenador por si me cargaba algo, utilizaba Norton Ghost. Se trata de un programa o un LiveCD que arranca sin necesidad de un sistema operativo (aunque también había la versión para Windows), y realiza copias exactas de discos duros o particiones. Si fallaba algo, podía reestablecer esa copia y me devuelve el ordenador al estado anterior de que empezará a hacer modificaciones.

Pero empezé a tener problemas con él: es de pago, había ordenadores en que no arraba desde el CD, o arrancaba y no reconocía el disco duro, … Así que busqué una alternativa que fuera mejor, y encontré CloneZilla.

Leer el resto de la entrada »

Sobre este blog

Este blog informático pretende ser un blog de notas o portafolio de información variada: trozos de código, descubrimientos, notas sueltas, ... Para tenerla a mano, y ser compartida.