Me pone programar

Más que me pone, digamos que me gusta y disfruto con ello

Me pone programar

Blog personal sobre PHP, JavaScript, CSS, Estándares, Flash i demás temas interesantes del mundo de la informática e Internet

Firebug en español

29/06/2008 a las 11:11 por Shox

Hoy ha salido una nueva versión del famoso e importantísimo plugin Firebug para Firefox. La versión, 1.2.0 B4 pide hoy su descarga para los usuarios del plugin, dando soporte para el Español. La anterior versión no disponia de muchas novedades, basicamente el soporte oficial de Firefox 3. A partir de ahora, Inspect será Inspeccionar o Console será Consola.

Otros idiomas soportados además del español y el inglés: danés, francés, italiano, japones, coreano, holandes, portugués, sueco, turco y chino. El idioma es reconocido por el propio programa, sin, aparentemente, poder cambiarlo.

Próximamente esperamos explicar un poco más sus bondades con algunos trucos.

Categorías: Firefox
Tags: , ,
Comentarios: Sin comentarios »

La lenta muerte de PHP4

29/06/2008 a las 08:19 por Shox

Estas semanas me he estado peleando con unas máquinas que corrían bajo PHP4 y que queria poner una plataforma desarrollada para PHP5, los problemas han sido muchos y variados:

  • Primero no soporta de manera total la transformación de XSL, en la cual se basaba prácticamente todo el sistema. Por suerte, el fron-end es en flash y sólo debo generar con PHP un XML.
  • Funciones que no existen en PHP4. No voy a poner ni todas ni unas cuantas, hay bastante funciones muy útiles que no estaban en PHP4 y que si están en PHP5.

Para más inri, los administradores del sistema no querian tocar la máquina para instalarle ningún módulo, asi que tenia disponia de un PHP 4.4.7 a pelo, que me tenia que montar como quisiera para hacer funcionar toda la aplicación, eso si, con los mismos timmings que antes de conocer este problema.

Pense en hacer una guía de como migrar de PHP5 a PHP4, pero no veo lógico que seamos los programadores los que nos tengamos que acomodar a una vieja plataforma por culpa de no querer actualizar.

Recordemos que PHP5 está entre nosotros desde hace 4 años, y hace justo 1 que el equipo decidió dejar de dar soporte a PHP4, viendo que la nueva versión ya era totalmente estable.

Así que administradores del mundo, migrar a PHP5 si aun no lo habeis echo, y recordar que PHP6 está aquí en la esquina.

Migrar de PHP4 a PHP5

Categorías: PHP
Tags:
Comentarios: Sin comentarios »

Que es jQuery. Parte I

29/06/2008 a las 07:28 por Shox

jQuery es un framework de JavaScript para facilitar, entre otros, el acceso a los elementos del DOM, los efectos y sobretodo las llamadas en AJAX. jQuery podría ser otro framework más como script.aculo.us, MooTools, YUI pero en cambio disponemos una gran potencia con una facilidad mucho mayor que sus competidores.

Primero de todo deberemos de incluir la libreria en nuestra web: por ejemplo

HTML:
  1. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"></script>

Primero de todo vamos a seleccionar un elemento de nuestro HTML, y por ejemplo, esconderlo. Utilizaremos la función hide() que, efectivamente, esconde dicho elemento html, pero ahora nos fijaremos más en como acceder al árbol DOM de HTML.

JavaScript:
  1. $("p").hide(); // Escondemos todas las p de nuestra web
  2.  
  3. $("#item").hide(); // Escondemos el elemento con id="item"
  4.  
  5. $(".miClase").hide(); // Escondemos los elementos con class="miClase"
  6.  
  7. $("p span").hide(); // Escondemos únicamente todos los span que haya dentro de los p
  8.  
  9. $("p span.miClase").hide(); // Escondemos los span con class="miClase" que haya dentro de p
  10.  
  11. $("p span#item").hide(); // Escondemos el span con id="item" que hay dentro de p
  12.  
  13. $("p > span").hide(); // Esconde los span que son hijos directos de p
  14.  
  15. $("p+div").hide(); //Esconde todos los div que esten precedidos de un p
  16.  
  17. $("p~div").hide(); //Esconde todo los div que hayan sido precedido por p
  18.  
  19. $("input[type=radio]").hide(); // Esconde todos los inputs que sean del tipo radio
  20.  
  21. $("a[href^=http://]").hide(); // Esconde todos los links que su href empiece por http://
  22.  
  23. $("a[href$=.com]").hide(); // Esconde todo los links que su href acabe por .com
  24.  
  25. $("a[href*=www]").hide(); // Esconde todo los links que en su href aparezca "www"

Como podemos ver, jQuery siempre (o casi siempre, ya lo veremos más adelante) actua sobre elementos de HTML, seleccionandolos en lo que llamaremos selector, y le aplicaremos funciones:

$(selector).funcion();

Ya veremos más adelantes que la selección de elementos del DOM es más potente aun, y que las funcionalidades, a parte de que se pueden unir, son casi infinitas.

jQuery

Categorías: JavaScript, jQuery
Tags: ,
Comentarios: Sin comentarios »

Acentos en los subjects de los mails

29/06/2008 a las 06:58 por Shox

La codificación de los páginas ha tenido muchos misterios para mi durante mucho tiempo, pero poco a poco los he ido salvando todos. Uno de los que me tenía más preocupado, por que lo había provado casi todo, es el de subjects o asunto de los emails.

Siempre había conseguido enviar emails bien codificados, pero el asunto siempre llegaba con X , interrogantes o demás símbolos raros. La solución como siempre, la tiene Google.

Si queremos enviar un asunto tal que "Título del mensaje" la letra í acentuada debe estar codificado en quoted printable, y el mensaje debe de tener unos carácteres especiales para especificarle codificación:

=?UTF-8?B?T=EDtulo del mensaje?=

Que en PHP podemos conseguirlo mediante:

$title=”=?UTF-8?B?”.base64_encode($title).”?=\n”;

y así conseguimos pasar, en el ejemplo, la í acentuada por su correspondiente en ASCII: =ED

Si no la teneis ya, esta es una línea básica que siempre deberia ir en vuestros sites donde se envien emails.

Categorías: PHP
Tags: , ,
Comentarios: 1 comentario »

IE, Javascript y los memory leaks

29/06/2008 a las 06:47 por Shox

Recuerdo del blog de Omatech, un problema que tuvo David con los memory leaks del Internet Explorer 6 usando Javascript.

Traduzco al castellano el problema la solución:

"...la navegación por la web era fluida por Firefox e Internet Explorer, pero pasaba a ser excesivamente lenta en el segundo después de algunas iteraciones.

Despues de varias pruebas, encontra algo interesante:IE: Where’s my memory?. Segun parece Internet Explorer no gestiona bien los closures en Javascript de forma que el garbage collector automático utilizado en el ECMAScript no funciona como debería en Internet Explorer. Podemos encontrar una buena explicación de que es un closure en IE: Where’s my memory? o en Javascript Closures.

Una vez echo los cambios en varios sitios, la navegación era ligeramente más fluida, pero el problema seguía estando. ¿Que podría ser? Finalmente, lo que parecía ser como isolate-your-code-developing, encontre el problema, i como sucede a menudo resultaba ser menos importante de lo que podíamos pensar (ahora es fácil decirlo). En la web se utilizaba un javaScript con el tag de inicio siguiente:

<script language="javascript">

En cambio, según las especificaciones de W3C, el atributo language está en desuso, i en su lugar instan en utilizar el atributo type, que por otra parte, es obligatorio. Así que el tag de inicio mínimo deberia de ser:

<script type="text/javascript">

Este cambio resuelve finalmente el problema planteado..."

Con este ejempo podemos ver la importancia de que las especificaciones están para algo, y que ampararse en lo que uno aprendio hace 8 o 10 años no tiene sentido.

Categorías: JavaScript
Tags: , ,
Comentarios: Sin comentarios »

« Entradas anteriores