Archivo de la categoría ‘Desarrollo Web’

Videotutorial: Cómo hacer un plugin jQuery – Menú acordeón multinivel

Miércoles, 3 de Marzo, 2010

Respondiendo a la multitud de peticiones en los comentarios del artículo sobre cómo crear un menú en acordeón, aquí os muestro cómo hacer el mismo menú pero con soporte para varios niveles.
Este menú está basado en el anterior, y como apenas necesitaba un pequeño cambio en el javascript para hacerlo multinivel, he aprovechado para convertirlo en un plugin y enseñaros en un screencast cómo hacer vuestros propios plugins en jQuery.

Ver Demo menú acordeón multinivel
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

URLs amigables en CodeIgniter: Controlador ‘catch-all’

Miércoles, 10 de Febrero, 2010

Supongamos que estamos programando un CMS en CodeIgniter para integrarlo en nuestros proyectos, y queremos generar urls del estilo www.dominio.com/titulo-de-la-pagina. Una manera de enfocarlo sería por ejemplo crear un controlador Paginas con un método cargar, al que se le pasará como parámetro el título de la página en cuestión. De esta manera se llamaría a la url www.dominio.com/paginas/cargar/titulo-de-la-pagina. Para eliminar /paginas/cargar/ de la url editaríamos el fichero routing.php.

Esto supone un problema: si añadimos una regla genérica a las rutas para redirigir cualquier url al controlador paginas/cargar, no funcionaría el resto de controladores de nuestra aplicación. Deberíamos añadir una regla para cada página o bien para cada controlador que tengamos, con lo cual perdemos dinamismo y nos obliga a editar el fichero de rutas con cada cambio.
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Videotutorial: Mejora progresiva con CSS3

Martes, 12 de Enero, 2010

En este videotutorial voy a enseñaros algunas propiedades de CSS3 que nos servirán para mejorar visualmente nuestros diseños sin necesidad de usar imágenes o javascript, concretamente el manejo de sombras, gradientes y transformaciones sólo con CSS. Puesto que CSS3 aún no es un estándar, tendremos que usar las extensiones propietarias que implementan los navegadores más modernos, como las últimas versiones de Safari, Chrome y Firefox. Estas propiedades generalmente contiene el prefijo -moz para Firefox y -webkit para Safari y Chrome (webkit es que el motor utilizado en estos navegadores).

Ver Demo CSS3
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Videotutorial: Hooks y creación de librerías con Codeigniter

Sábado, 2 de Enero, 2010

codeigniter_screencast_hookA petición popular he creado un último screencast sobre CodeIgniter. En él os voy a enseñar un par de conceptos importantes para extender la funcionalidad del framework: los hooks y la creación de librerias. Como ejemplo crearé un sistema muy simple de autenticación, con una librería que contendrá una función para hacer login y otra para logout, y un hook que se disparará cada vez que se ejecute cualquier controlador. Los hooks son una utilidad que nos permite llamar a una función en determinadas fases de la ejecución del framework, por ejemplo antes o después de ejecutar cualquier controlador, el constructor de éste, etc.

Podéis encontrar el resto de screencasts en la página de videotutoriales, o suscribiros al podcast de iTunes.
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Fuentes en la web con @font-face

Lunes, 21 de Diciembre, 2009

Una de las grandes limitaciones que siempre hemos tenido diseñando en la web ha sido la incapacidad de poder usar fuentes mas allá de las que el usuario tiene instaladas por defecto en su sistema. Por ello las opciones que teníamos era utilizar imágenes (sólo recomendable para encabezados y menús) y las clásicas fuentes Arial, Verdana, Georgia, …etc., las llamadas fuentes “web-safe” que sabemos se encuentran en la mayoría de los sistemas. Recientemente han salido herramientas como Cufón y Typekit, que nos permiten mostrar fuentes usando javascript, pero estos sistemas no son la solución más óptima.

Hoy día gracias al avance de los navegadores podemos usar cualquier fuente utilizando la propiedad CSS @font-face, siempre que tengamos en cuenta y respetemos la licencia de cada una, que debe permitir empotrado mediante @font-face. Podemos ver un listado de fuentes y licencias que permiten este uso en el wiki de webfonts.info.
A continuación os explicaré cómo utilizar @font-face para poder usar fuentes de verdad en la web.
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Manejo de errores en MySQL con CodeIgniter

Jueves, 10 de Diciembre, 2009

codeigniter_mysql_errorsCuando tenemos un error conectando o realizando operaciones con la base de datos (MySQL) usando CodeIgniter, lo normal es que el sistema nos muestre un mensaje por defecto con el código, descripción y query ejecutado, tal que así:

error_db_ci

Esta página de error se puede personalizar editando la plantilla /errors/error_db.php en nuestra carpeta de la aplicación. El problema es que este mensaje se mostrará en lugar de nuestra vista o en medio de ella, y además se mostrará siempre a menos que desactivemos la opción de debug de la base de datos, y si lo hacemos nuestra aplicación fallará silenciosamente, no tenemos forma de capturar este error y realizar las operaciones que nos convengan, lo cual sería especialmente útil cuando hacemos peticiones ajax.

Para solucionar esto existen dos métodos no documentados en la clase DB que nos permite capturar el mensaje de error y el número:
$this->db->_error_message() y $this->db->_error_number().
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Videotutorial: CRUD con scaffolding, rendimiento y unit testing en Codeigniter

Martes, 24 de Noviembre, 2009

codeigniter_screencastPara terminar la serie de screencasts sobre CodeIgniter voy a mostraros algunos componentes interesantes que tiene el framework, como el scaffolding para hacer CRUD y las librerías benchmark y unit testing. Estas librerías son muy útiles cuando desarrollemos aplicaciones complejas en las que necesitemos medir el rendimiento y hacer pruebas unitarias, y nos pueden ayudar a depurar errores y encontrar bloques que necesitemos optimizar. Sobre el scaffolding, es conveniente utilizarlo sólo en la fase de desarrollo, ya que el uso de la palabra secreta no proporciona la seguridad suficiente para poder usarlo en producción.

Podéis encontrar el resto de screencasts en la página de videotutoriales, o suscribiros al podcast de iTunes.
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Menú vertical en acordeón con CSS y jquery

Miércoles, 7 de Octubre, 2009

menu_acordeonA pesar del buen feedback recibido sobre mi serie de tutoriales de CodeIgniter, los artículos sobre menús animados con CSS y javascript siguen siendo los más populares en este sitio, y parece que son bastante útiles para la gente que está empezando. Por ello hoy me tomo un pequeño respiro de los videotutoriales y voy a enseñaros cómo hacer el clásico menú vertical en acordeón con CSS y jQuery.
El resultado lo puedes ver aquí: Ver demo
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Videotutorial: Ajax con Jquery en Codeigniter

Viernes, 25 de Septiembre, 2009

codeigniter_screencast_jqueEn este screencast voy a mostraros un sencillo ejemplo de cómo utilizar jQuery para cargar contenido mediante ajax en CodeIgniter. El código está basado en el ejemplo del primer video “Introducción a CodeIgniter”, así que os recomiendo que le echéis un vistazo primero si no lo habéis hecho ya. Vamos a modificar ese código para que liste sólo los títulos de las entradas, y al hacer click en un título se cargue debajo el contenido de la entrada.

Este es el tercer videotutorial de la serie CodeIgniter, podéis encontrarlos todos en la página de screencasts, o suscribiros al podcast de iTunes.
Leer el resto de la entrada »

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter

Publicado CodeIgniter 1.7.2

Miércoles, 16 de Septiembre, 2009

codeigniter_1.7.2Hace unos días se liberó la versión 1.7.2 de CodeIgniter, que podéis descargar aquí. Sus principales mejoras, además de un buen número de bugs corregidos, son:

  • Compatibilidad con PHP 5.3.0.
  • Añadida la clase Cart Class.
  • Ciertas mejoras en el Form helper.
  • Añadida función is_php() para comparar versiones de PHP.
  • Modificada la función show_error() para permitir enviar códigos de respuesta HTTP.

Lo más interesante que veo es la compatibilidad con PHP 5.3 (sobre todo desde que MacOS X Snow Leopard viene con esta versión de serie), y la nueva clase Cart. Esta clase es útil para programar una tienda virtual, ya que proporciona una interfaz sencilla para crear y actualizar un carrito de la compra. Aunque ya se rumoreaba desde hace tiempo que se iba a incluir esta clase, se esperaba para la versión 2.0, ya que es raro que introduzcan librerías nuevas en versiones menores.

Cuando tenga un hueco espero en breve seguir con mi serie de video tutoriales de CodeIgniter.

Si te ha gustado este artículo, por favor compártelo:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Meneame
  • StumbleUpon
  • Tumblr
  • Twitter
RSS iTunes podcast Twitter

Categorías

Mi Amazon whislist: Regálame un libro!

Archivos