Posts Tagged ‘php’

Problemas de autentificación en MySQL desde PHP

// Enero 19th, 2006 // Comments // AC Log

Hoy me he encontrado con un problema al instalar una aplicación web en un servidor.
A partir de la versión 4.1 de MySQL, el sistema de autentificación de usuarios ha sido modificado, haciendo imposible que PHP conecte a no ser que este actualizada su extensión de MySQL, y devolviendo el siguiente error cuando intenta establecer una conexión:

Warning: mysql_connect() [function.mysql-connect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Existen varias soluciones a este problema, como actualizar la extensión de PHP o establecer la contraseña de los usuarios de MySQL utilizando una función que la codifica con el antiguo sistema.
Podeis encontrar más información sobre los diferentes remedios en estas páginas:

Cuidado con el $_SERVER['HTTP_REFERER']

// Abril 25th, 2005 // Comentarios desactivados // IoZBlog

Inauguro una serie de posts en los que iré explicando algunos consejos utiles para PHP que he ido aprendiendo con el tiempo.

En esta ocasión, os llamaré la atención sobre el uso indiscriminado que muchos programadores nóveles de PHP hacen de la variable de servidor $_SERVER['HTTP_REFERER'].
Muchos la utilizan (yo hace tiempo tambien lo hacía) para generar enlaces de “Volver atrás”, para redireccionar a la pagina de origen despues de la ejecución de un script, etc. El problema radica en que esta variable no siempre está disponible, ya sea por que el navegador no la envie, este siendo filtrada/bloqueada por el cortafuegos del usuario, u otras posibles causas. De hecho, en la manual oficial de PHP ya lo advierten:

… Este valor es definido por el agente de usuario. No todos los agentes de usuario lo definen, y algunos proveen la capacidad de modificar HTTP_REFERER como una característica del software. En resumen, no se puede confiar realmente en este valor…

Como consecuencia tenemos enlaces que no llevan a ningun sitio, redirecciones fallidas y otros errores derivados de su uso.
Visto todo esto, solo me queda recomendaros que no useis esta variable, o en cualquier caso programeis una función que compruebe su valor antes de usarla.

Wordpress Pingback Encoding Fix

// Abril 8th, 2005 // Comentarios desactivados // IoZBlog

(Entrada en inglés para que la pueda leer más gente. Si alguien no la entiende que lo comente y se la traduzco.)

Wordpress v1.5 fixes the trackback encoding problem between blogs with distinct charsets, but doesn’t fix the same problem with pingbacks.
Here you have a “xmlrpc.php” file hack that solves that problem: wordpress_pingback_encoding_fix.zip
Unzip and upload the file to your blog main folder, overwriting the old one.

Updated:
I have setup two blogs with distinct charset encoding. You can make your pingback tests on any of their posts:
WPUTF (Wordpress Blog with UTF-8 encoding)
WPISO (Wordpress Blog with ISO-8859-1 encoding)

Wordpress Trackback Encoding Fix

// Abril 7th, 2005 // Comentarios desactivados // IoZBlog

Las versiones antiguas de Wordpress muestras caracteres extraños (“chinitos” como los llama HighToro) en los trackbacks procedentes de webs con otra codificación (UTF-8, ISO-8859-1, ISO-8859-15, etc.) diferente a la propia.
Basandome en la versión 1.5 que ya corrige el problema, he realizado un hack del archivo “wp-trackback.php” para los que como yo todavia no se han actualizado a la nueva versión (ya sea por pereza, falta de tiempo, etc.).

Podeis descargar el fichero en cuestión comprimido en zip de aquí: wp-trackback_encode_fix.zip
Solo teneis que descomprimirlo y subir el archivo “wp-trackback.php” al directorio principal de vuestro blog, sobreescribiendo el antiguo.

Lo he probado en todas las version de 1.2.X de Wordpress y haciendo trackbacks de un blog con codificación UTF-8 a otro con ISO-8859-1 y me ha funcionado bien. Si lo probais comentarme que tal os va. Yo cuando tenga un rato le pediré a algun bloguer japones que me haga un trackback a ver si rula bien.