Jose Hernández

Plugin jQuery para Google Maps

gMaps es un plugin para jQuery que permite mostrar mapas de Google Maps y personalizarlos de una forma sencilla. El plugin ha sido desarrollado por Sebastian Poręba y podemos ver toda la información relacionada con el plugin en su blog.

Para comenzar a trabajar con este plugin, simplemente tenemos que cargar en nuestra página web las librerías del Api de Google Maps, jQuery y el propio plugin gMaps. Un primer ejemplo sencillo lo podemos ver a continuación, con el siguiente código podemos crear un mapa centrado en Valencia, España.

Leer más

Silex, Doctrine y Twig II

Actualización Octubre 2012: Con las últimas versiones de Silex el método para crear un proyecto con el fichero .phar a quedado obsoleto. Si quieres ver como crear un proyecto nuevo en Silex dale un vistazo a la entrada Actualizada la forma de crear un proyecto en Silex.

Continuando con la entrada anterior sobre Silex, Doctrine y Twig I ahora vamos a terminar de implementar los métodos que nos dejamos a medias la otra vez. Comenzaremos con el método más fácil de los tres que es el de eliminar. Lo primero que tenemos que hacer es en el fichero index.php justo después de la línea donde indicábamos que estamos en modo debug es registrar el modulo de sesión ya que lo usaremos para pasarnos mensajes cuando eliminemos, insertemos o actualicemos un elemento.

1
2
3
4
5
6
7
8
9
<?php
$app = new Silex\Application();

$app['debug'] = true;

$app->register(new Silex\Provider\SessionServiceProvider());
$app->register(new Silex\Provider\UrlGeneratorServiceProvider());

...

A continuación implementaremos el método eliminar. Este método recibirá un id del elemento a eliminar y lo borrará de la base de datos. El código que realiza esta funcionalidad es el siguiente:

Leer más

Silex, Doctrine y Twig I

Actualización Octubre 2012: Con las últimas versiones de Silex el método para crear un proyecto con el fichero .phar a quedado obsoleto. Si quieres ver como crear un proyecto nuevo en Silex dale un vistazo a la entrada Actualizada la forma de crear un proyecto en Silex.

Continuando sobre la serie de entradas sobre Silex, ahora es el turno para ver como integramos todo lo que hemos visto hasta el momento con una base de datos. En entradas anteriores hemos visto como trabajar con Silex y como usar plantillas Twig en Silex. A continuación vamos a juntar esto recuperando datos de una base de datos.

Comenzamos preparando nuestro directorio de trabajo, creamos una carpeta que llamaremos Software en nuestro servidor. En ella descargamos Silex dejando el fichero descargado Silex.phar en el directorio que hemos creado. A continuación creamos dentro de la carpeta Software una nueva carpeta que llamaremos vendor. Descargamos la última versión estable de Twig, descomprimimos el fichero descargado y accedemos a la carpeta lib que se ha extraído. Dentro de ella, copiamos la carpeta llamada twig y la pegamos en la carpeta vendor que hemos creado antes. Después de esto, descargamos la última versión del DBAL de Doctrine, descomprimimos el fichero descargado y copiamos la carpeta llamada Doctrine dentro de nuestro directorio vendor. Con esto ya tenemos todo lo necesario para ponernos a trabajar.

Leer más

Consultas a bases de datos desde PHP con PDO

Si el desarrollo de tus aplicaciones lo haces con PHP usando como base de datos MySql y no utilizas ningún tipo de framework, seguramente las consultas a la base de datos las realizarás con el API de mysql. Un ejemplo del uso de este API es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$con = mysql_connect('localhost', 'user', 'pass');

mysql_select_db('nombreBaseDatos');
$sql = 'SELECT * FROM tabla';

$res = mysql_query($sql);

while ($row = mysql_fetch_array($res))
  echo $row['titulo'];

mysql_free_result($res);
mysql_close($con);

Si este es tu caso, deberías saber que estás usando una API obsoleta y desaconsejada por el equipo de PHP. En su lugar deberías usar el API de mysqli o mejor aún PDO (PHP Data Objects). Utilizando PDO podemos solventar muchas dificultades que surgen al utilizar la API de mysql. Un par de ventajas que se obtienen con PDO es que el proceso de escapado de los parámetros es sumamente sencillo y sin la necesidad de estar atentos a utilizar en todos los casos funciones para este cometido como mysql_real_escape_string(). Otra ventaja es que PDO es una API flexible y nos permite trabajar con cualquier tipo de base de datos y no estar restringidos a utilizar MySql.

Leer más

Solución errores MAMP y Symfony 2

Al empezar a desarrollar aplicaciones con Symfony 2 en OSX decidí instalar MAMP para tener de una forma rápida y sencilla en mi equipo apache, php y mysql. Era la primera vez que trabajaba con MAMP ya que anteriormente en otros sistemas operativos siempre he utilizado XAMPP. Pero el comienzo no iba a ser tan sencillo, nada más intentar crear la base de datos con el comando de Symfony 2

> app/console doctrine:create:database

Obtuve un error que no me dejaba crear la base de datos. El error era el siguiente:

Could not create database for connection named NombreBaseDatos
SQLSTATE[HY000] [2002] No such file or directory

Leer más

Silex y Twig

Actualización Octubre 2012: Con las últimas versiones de Silex el método para crear un proyecto con el fichero .phar a quedado obsoleto. Si quieres ver como crear un proyecto nuevo en Silex dale un vistazo a la entrada Actualizada la forma de crear un proyecto en Silex.

Después de haber realizado una pequeña introducción a Silex y dedicarle dos entradas a Twig (Plantillas Twig I y Plantillas Twig II), es ahora el turno de ver como podemos unir estas dos tecnologías para sacar más partido de ellas. Cada uno de estos componentes tendrá su función, mientras que Silex se encargará de llevar toda la lógica de nuestra aplicación, Twig será el encargado de mostrar los resultados en pantalla renderizando las plantillas que creemos.

Vamos como siempre a crear una pequeña aplicación para mostrar de forma práctica la forma de utilizar Silex junto a Twig.

Leer más