Instalar Handset Detection en un Hosting Compartido Linux

Pues ya os dimos la chapa en su día explicando como instalar handset detection en local con WAMP bajo Windows, que nos permitía conocer el dispositivo que visita nuestra web, y en consecuencia, mostrar determinados contenidos servidos «a medida» al mismo. Handset detection es una aplicación basada en la filosofía de WURLF, que nos da un webservice que podemos consultar, para obtener los datos del terminal que visita una web (más o menos la misma información que WURLF).

Pues ahora toca dar la chapa con lo realmente importante, que es cuando vamos a la vida real. Y en muchos casos eso implica un hosting compartido, en este caso Linux. Si el hosting no fuera compartido, puede que todo sea más sencillo, pero vamos, la base es ésta que os indicamos.

Seguir leyendo…

Conflicto JQuery vs Mootools

Hoy desarrollando un proyecto me he encontrado con un problema en una sección de la web. Para esta sección quería hacer uso de dos librerías distintas de javascript: JQuery y Mootools.
El caso es que entre ellas existe un conflicto que hacía que el efecto que quería hacer con JQuery no lo ejecutaba.

Indagando por la web, he encontrado la solución (por lo menos para el caso que estaba haciendo) y es hacer uso de la función jQuery.noConflict(). Lo que tuve que hacer fue lo siguiente:

  1. En el script donde inicializaba el JQuery llamar a la función jQuery.noConflict()
  2. Y luego cada vez que usase el $ que se usa con jquery sustituirlo por jQuery

Y ya está. Más información en el enlace de arriba :D

Variabes, constantes y arrays

A veces, desarrollando algún proyecto que tiene más de un idioma, me entró la duda de como almacenar toda la información en los diferentes idiomas. Entre las alternativas podrían estar:

  • Uso de constantes
  • Uso de variables
  • Uso de arrays

A priori, diríamos que se deberían usar constantes, puesto que es información que no va a variar. ¿Pero sería lo más eficiente? Os pongo un enlace para que lo echeis un vistazo y decidais vosotros mismos :)

strtouppper, strtolower, ucwords y la codificación

En un proyecto reciente del estudio, hemos tenido que lidiar con la conversión de cadenas a minúsculas, mayúsculas y a frases capitalizadas. El proyecto partía de un Excel en el que todos los datos venían en mayúsculas, y por razones tanto de diseño como de legibilidad decidimos capitalizar los nombres de empresas, sectores, etc.

En principio con PHP lo teníamos fácil, ya que trae unas cuantas funciones conocidas para convertir cadenas a minúsculas, mayúsculas e incluso a formato titular (Cada Letra De Cada Palabra En Mayúscula). Los problemas llegan al hablar de ASCII extendido. Para empezar, nuestra base de datos estaba en UTF8_general_ci, con lo que algo como ESPAÑA viene a ser ESPAÄ’A o algo similar. Aquí os dejo una página en php clarificadora de lo que ocurre al tratar de lograr el objetivo de manera directa:

Seguir leyendo…

Tutorial JSFL. Capítulo III

Pues Luis sigue aplicándose duro en educarnos en el mundo del JSFL, y bien que lo hace. Ésta es la segunda entrega del tema Comandos con Interfaz Gráfica, del que ya os pusimos sus primera parte.

La cosa se va poniendo interesante, y nos muestra un ejemplo para crear un XML de imágenes mediante un comando con una interfaz gráfica muy personalizada. En palabras del autor:

En esta ocasión vamos a crear un comando que nos ayude a crear un XML con el listado de ficheros jpg que se encuentran en un directorio que indicaremos mediante un cuadro de diálogo Buscar carpeta.

Muchas gracias Luis por continuar con esta magnífica labor!!

GoogleMaps y codificaciones

Pues recupero aquí un tip muy util para conseguir unificar codificaciones entre el script de Googlemaps y el de nuestra página. En su día el gran Andrés ya lo indicó en su web, pero viene muy bien tenerlo a mano, asi que lo reproduzco a continuación:

Seguir leyendo…

Tutorial JSFL. Capítulo II

Luis ha continuado la tarea que decidió comenzar con su primer tutorial sobre JSFL, y ha sacado el segundo. Tal y como habíamos comentado anteriormente vamos a intentar hacernos eco de cada uno de ellos, ya que es un material no muy habitual en Flash, y no por ello poco interesante. Además en castellano no hay excesiva información, lo que los hace aun más valiosos.

Este segundo tutorial versa sobre comandos con interfaz gráfica y trata sobre cómo añadir una interfaz a los comandos JSFL, para facilitar la configuración y uso del mismo para el usuario.

Nuevamente… gracias por el esfuerzo Luis!

Cambiando el acceso a WordPress con un subdominio

Pues he creado un subdominio, ya que han facilitado la tarea desde Cdmon de manera notable, con lo que ahora se puede acceder al blog por: http://blog.q-interactiva.com además de por el tradicional http://q-interactiva.com/blog.

Si bien he conseguido mi objetivo (lo he hecho desde el panel Settings > General > Blog address (URL) y cuidadín que si se cambia WordPress Address (URL) te cargas el blog y hay que ir a la BBDD para poder recuperarlo), al panel de administración no me deja acceder a través del subdominio y por más que he buscado en la configuración del wp-admin, como en las propias tablas de la base de datos de WordPress no he encuentrado si eso es posible. Es decir si se intenta acceder a http://blog.q-interactiva.com/wp-admin no redirige correctamente (redirige a http://www.q-interactiva.com/blog/wp-admin).

Seguir leyendo…

Seguridad bajo PHP y MySQL

Por motivos del trabajo, últimamente nos hemos tenido que mirar bastante información sobre seguridad en PHP, y la realidad es que es muy fácil saltarse las barreras de seguridad de una web si no se toman medidas para evitarlo.

La buena noticia es que hay medidas bastante simples que se pueden tomar y que ayudan bastante a eliminar un alto índice de atacantes que emplean técnicas tradicionales. La mala noticia es que la seguridad nuca será algo infalible.

Seguir leyendo…

Google Static Map API

No creo que quede mucha gente que use Internet que no conozca GoogleMaps, pero hoy he descubierto un elemento relacionado que no conocía y que me parece bastante práctico en según que ocasiones. Resulta que para «capturas» o «pantallazos» de una zona de un mapa, no es necesario hacer una captura para obtener la imagen, sino que en Google Maps ya han pensando en ello y han creado la Google Static Map API.

Además por si fuera poco, han preparado un asistente para poder configurar de una manera mucho más sencilla nuestra captura de una zona del mapa, pudiendo incluir incluso un trazo sobre el mismo. Una bonita manera de emplear una «captura» de Google Maps sin sacar nuestra propia copia, con la seguridad legal que eso nos da. También dejo el enlace a la documentación.