RSS Feeds

16.8.12

Obtener el último valor del id insertado en MySQL

Cuando se trabaja con registros dinámicos por lo general siempre es imprescindible conocer el valor del último id registrado en la tabla, para hacer esto basta con la siguiente línea.

$lastID =  mysql_insert_id();

¿Esperaban mas? siento decepcionarlos, se consigue así de fácil y rápido, espero que les sirva.

29.7.12

Control Packages en Sublime Text 2

Antes que nada aclaremos que los "paquetes" de Sublime Text 2 son como plugins que podemos instalarle para realizar tareas como: añadir soporte para otros lenguajes que no vienen por default con sublime, clonar proyectos desde GitHub y BitBucket, Implementar funcionalidades para CSS como SASS, convertir rápidamente un valor Hexadecimal a RGBA en un documento, Instalar la metodología ZenCoding fácilmente,etc. Todo para facilitar la tarea del desarrollador.

En su sitio web lo definen como:

Control Packages es un super completo administrador de paquetes que te ayuda a descubrir, instalar, manetener actualizados y eliminar facilmente los paquetes de sublime text 2, además de actualizarlos automaticamente a través de plataformas como GitHub y BitBucket, también te permite gestionar tus proyectos de estos servicios de repositorios.

Características:
  • Encuentra fácilmente, instala, actualiza o elimina, paquetes sin reiniciar Sublime Text 2.
  • Mantén instalados los paquetes actualizados con la función de auto-update.
  • Descarga paquetes desde GitHub, BitBucket y el sistema canal/repositorio JSON
  • Maneja la actualización de paquetes clonados a partir de GitHub y BitBucket a través de Git y Hg
  • Provee comandos para activar y desactivar paquetes
  • Incluye un comando para empaquetar cualquier directorio del paquete en un archivo. Sublime-paquete

Para instalarlo solo hay que seguir las instrucciones del sitio web

Una vez instalado se activa con Control + P por ejemplo intenta buscar ZenCoding para instalar esa funcionalidad, presionas enter y listo, puedes hacer uso de ZenCoding en tu código.

En el sitio web podemos encontrar una comunidad en donde los desarrolladores colocan una gran variedad de paquetes para todo tipo de lenguaje, CSS, PHP, RAILS, CakePHP, Android, y la lista sigue creciendo.

Saludos.

20.5.12

foreach devuelve error “Cannot access empty property”

Trabajando en una aplicación me pasé un par de horas resolviendo un error que me devolvía "Cannot access empty property" cuando ejecutaba un bucle foreach para recorrer un array, la solución era tan sencilla pero después, de no dormir un par de días y de demasiadas líneas de código escritas no se hacía tan evidente el error.

Lo malo: 
foreach ($array as $key -> $value)
Esto está mal porque estaríamos llamando al metodo value de alguna clase, ademas de que en las llamadas a métodos no se usa $ antes de su nombre, en una llamada a un método lo correcto sería $key->value(parámetros) el nómbre del método sin el signo de dollar antes, pero no olvidemos que de lo que estamos hablando en este post es de un array, así que continuemos.

Solución: 
reemplaza -> en lugar de => en tu bucle.

Resultado:

foreach ($array as $key => $value)
Con esto ya se recorre bien el array

Saludos.

25.4.12

Lo que un buen Diseño y Desarrollo Web debe tener.

En el camino como desarrollador Web muchas veces nos encontramos con métodos y herramientas que nos son indispensables para nuestro flujo de trabajo diario, hablemos de snippets o de plugins jQuery y PHP (es el lenguaje con el que trabajo) sin los cuales la tarea de hacer web en la actualidad sería completamente tediosa.

En este post quiero compartir de manera antológica algunas de las herramientas y características "ideales" que mediante el uso de herramientas como Wordpress, Silverstripe y programación PHP puro y duro en la oficina he encontrado que sería interesante conjugar en algún proyecto, es algo así, como ensamblar una computadora con las mejores caracteristicas.

Estos son los parametros que, al menos para mi conformarían un buen esquema de trabajo y que proporcionarían velocidad al tiempo de desarrollo, sin más preámbulo, comencemos:


Herramientas para el front-end (Vista de Usuario):
  • Skeleton Framework (Grid de maquetación con Responsive Web Design).
  • Hash Navigation (Para ubicar contenido en tu web a través de la url aun en Flash o AJAX facilitando el SEO y el aspecto social de tu sitio web)
  • jQuery NiceScroll (Un scroller sumamente estético y customizable)
  • 960.gs + Adapt.js (Grid para maquetación + Javascript para convertir tu diseño en Responsive Web Design).
  • Flexslider (slideshow de imagenes responsive).
  • Plantilla basada en HTML5
  • jQuery para conexiones AJAX
  • Plugin jQuery para alertas
  • Plugin jQuery para validar formularios
  • Utilizar un framework CSS (vease herramientas como LESS)
Características del CMS
No sugeriré ningun framework específico ya que eso es cuestión de gustos de cada quien.

  • Slugger automático para categorías (ej. Crear "la-rica-pina" a partir de "La rica piña").
  • Multiple file uploader
  • Al eliminar un archivo o imagen eliminarlo del servidor no solo de la Base de datos.
  • Renombrar archivos al subirlos quitando espacios, acentos y caracteres que puedan causar error en el nombre del archivo al querer utilizarlo, además de asignar el ID de la fila como prefijo para evitar duplicados o sobreescribir el archivo (ej. 01-lafoto.jpg) donde 01 es el ID de la fila.
  • Clase en PHP para redimensionar imagenes al subirlas (autogenerar thumbnails y originales)
  • Clase en PHP para colorear y añadir algunos efectos a la imagen al subirla (grayscale, blur, sepia, etc.)
  • Debe ser capáz de reordenar una lista (proyectos, categorías, etc) mediante drag&drop y guardar el orden en la base de datos.
  • En el caso de subir una galería de un proyecto poder seleccionar la que servirá como Cover o portada (Utilizando AJAX).
  • WYSIWYG con características muy básicas (ej. crear listas UL, negritas, y url link), recordemos que el estilo se define por el diseñador en el front-end.
Ustedes que agregarían o quitarían a esta lista?