Entradas

Mostrando entradas de marzo, 2014

Alternativa para íconos de jQuery UI

Imagen
Buscando por la web, recientemente encontré un paquete de íconos genial para cualquier desarrollo web y que con una modificación en el CSS es plenamente compatible con los escasos íconos de jQuery UI. Una de las mayores ventajas que le veo a este pack de íconos llamado Font Awesome es que como su mismo nombre lo índica, no son imágenes sino un tipo de letra, con lo cual redimensionarlos, cambiarles de color y alinearlos con un texto es excesivamente sencillo y no necesitamos imágenes adicionales. Seguro que alguna utilidad le encontráis a Font Awesome, la alternativa y / o complemento a los íconos por defecto de jQuery UI .

Análisis de algunos plugins para jQuery

Imagen
Esto no es un listado de los mejores ni los peores complementos (extensiones, plugins) para jQuery . Es un análisis de los que me he visto obligado o necesitado a utilizar durante los desarrollos web de los últimos años. Espero que mi experiencia con ellos os ayuden a elegir mejor cuales utilizar y cuales no. jQuery UI El mejor, imprescindible a la hora de dar un diseño homogéneo y versátil a una aplicación web, fácilmente instalable, amplia documentación, muy actualizado. Constantemente mejorado. La única pega podrían ser los íconos, que son escasos, pero esto se puede palear utilizando Font Awesome , la mejor librería de íconos para los desarrolladores web. jQuery blockUI Muy sencillo pero de una utilidad aplastante, permite bloquear la pantalla al pulsar algún botón o el evento que configuremos, incluso permite ejecutarlo en todas las llamadas AJAX con una configuración muy sencilla de una línea. Última versión la 2.66 del 9 de noviembre de 2013. jQuery Alert Dialogs Es un p

SQL Server vs MySQL

Imagen
Esto no es una comparativa a nivel profundo ni lo pretende ser, mi único objetivo es remarcar desde el punto de vista de un usuario básico las ventajas de uno u otro sistema a la hora de trabajar con ellos. No a la hora de instalarlos, configurarlos ni mantenerlos, solo a la hora de pedir datos almacenados en estos gestores de bases de datos. Por mi trabajo tengo que manejar ambos sistemas a partes iguales y muchas veces extraño cosas de uno en el otro y viceversa, aquí os dejo una pequeña comparativa desde mi punto de vista y basada en mi experiencia profesional, si alguien descubre algún error o una mejor forma de hacer las cosas estaría encantado de recibir un feedback. Cosas que agradezco de MySQL Me encantan las sintaxis ON DUPLICATE KEY e INSERT IGNORE, me parecen muy útiles a la hora de ejecutar consultas y gestionar errores. El uso de los índices de texto completo me parecen mucho más sencillo e intuitivo sobre todo con la integración de estos en tablas InnoDB desde las

Obtener tags de videos con PHP

Imagen
Buscando alguna clase para PHP con la que pudiera obtener los tags de información de cualquier tipo de archivo multimedia (AVI, MP3) he descubierto una utilidad bastante interesante, no es una librería de PHP sino una herramienta externa con la cual podremos procesar cualquier archivo de video y obtener toda la información disponible del mismo. La herramienta se llama MediaInfo y es un programa ejecutable al que pasándole la ruta del archivo nos devuelve toda la información, la cual podemos analizar y utilizar solo los campos necesarios. Lo primero que debemos hacer es descargarnos la última versión de MediaInfo pero solo el cliente (esta explicación la haré para Windows pero utilizando el mismo procedimiento es totalmente compatible con Linux). Una vez descargado, descomprimimos el archivo ZIP y ubicamos los archivos en algún lugar de fácil acceso, en mi caso c:\Program Files\MediaInfoShell\. La sintaxis para obtener la información de un video es la siguiente: mediainfo.exe -

Windows 8.1 Update 1

Imagen
Ya Microsoft tiene la versión final de su primera actualización grande de Windows 8.1 , es una actualización importante pero no llega a ser un Service Pack. La actualización aún no está disponible desde Windows Update que es dónde se va a lanzar oficialmente, no desde la Windows Store como fue el caso de Windows 8.1, pero los enlaces estuvieron activos desde su sitio de descarga durante un tiempo limitado, el suficiente para que fueran descargadas las 6 actualizaciones necesarias y almacenadas por los usuarios en otros soportes de almacenamiento online. Aquí os dejo los enlaces de descarga de Windows 8.1 Update 1 para sistemas x64 y x32 . PD: todas las MSU para Windows 8.1 Update, según la fuente de los archivos, fueron sacadas directamente desde los servidores de Windows Update. Instrucciones para instalar Windows 8.1 Update 1 Son 6 las actualizaciones necesarias y deben instalarse en el siguiente orden: KB2919442 *KB2939087 KB2919355 KB2932046 *KB2938439 KB293759

Almacenar IPs en las bases de datos

Imagen
La mayoría de los usuarios cuando tienen que almacenar IPs en sus bases de datos los hacen con tipos de campos VARCHAR cuando es mucho más óptimo almacenarlos con un entero sin signo (en caso de MySQL) o BIG INT (en caso de SQL Server). Convertir IPs en MySQL Existen 2 funciones para ello inet_aton e inet_ntoa , la primera convierte la IP en un número y la segunda es el proceso contrario. Convertir IPs en SQL Server En SQL Server no hay funciones predefinidas para ello pero las podemos crear muy fácilmente, en el siguiente enlace hay un par de ejemplos muy buenos para convertir IPs a BIG INT en SQL Server y viceversa . Esta transformación también la podemos hacer al insertar los datos en el lenguaje de programación, en el caso de PHP sería ip2long y long2ip .

Enviar archivos con AJAX y jQuery en HTML5

Imagen
Con la evolución de los navegadores y la llegada de HTML5 ya no es necesario utilizar librerías extras para simular subir archivos por AJAX, la mayoría de estas librerías lo que hacían era utilizar FLASH o hacer un IFRAME para capturar esta subida de archivos. Con HTML5 ya no es necesario esto. Esto es gracias a la introducción del objeto FormData que nos permite crear formularios al vuelo. Asignar un formulario existente a un objeto FormData: var formElement = document.getElementById("someFormElement");   var formData = new FormData(formElement); O puedes recorrer el formulario con jQuery para solo agregar los campos que te interesan: var formData = new FormData(); $('#someFormElement :input').each(function(){         var input = $(this);         switch (input.attr('type')){             case "checkbox":                 var v = (input.is(":checked"))?1:0;                 formData.append(input.attr('name'), v);                

jQuery data() vs val()

Hace pocos días me paso una cosa muy curiosa, imagina que tienes el siguiente input: <input type=”text” value=”5” data-numero=”5” /> Si ejecutamos las funciones de jQuery val() o data(“numero”), ambas, devuelven el valor 5, la diferencia es que val() lo devuelve como tipo string y data como integer. Esto solo afecta si se hace una comparativa con ===.