Esta haciendo un pequeño plugin usando los params de las tabla de Joomla para poder tratarlos y devolvérselos correctamente con mi actualización, el problema reside que al usar el json_encode me sustituía las tildes y las ñ por parámetros como estos.

\u003Cfoo\u003E»,»\u0027bar\u0027″,»\u0022baz\u0022″,»\u0026blong\u0026

comencé a usar funciones para averiguar si me estaba llegando correctamente los datos en UTF8 por $_POST

echo «ENCODING=».mb_detect_encoding($string);

Y si todo estaba perfecto, siguiendo algunos consejos de StackOverflow, para forzar la codificación no me devolvía nada de nada.

$json = json_encode($obj, JSON_UNESCAPED_UNICODE);

Hasta que finalmente encontré una función para eliminar los códigos UNICODE

function jsonRemoveUnicodeSequences($struct) {
return preg_replace(«/\\\\u([a-f0-9]{4})/e», «iconv(‘UCS-4LE’,’UTF-8′,pack(‘V’, hexdec(‘U$1’)))», json_encode($struct));
}

Ahora en vez de enviar directamente mi params a json_encode lo envió a la función jsonRemoveUnicodeSequences y listo ya tenemos nuestro insert perfecto y guardando correctamente los datos en las tablas de MYSQL.

 

Función encontrada en  http://www.avoid.org/?p=67

Por admin

Deja una respuesta

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
100% Free SEO Tools - Tool Kits PRO