Mostrando entradas con la etiqueta json. Mostrar todas las entradas
Mostrando entradas con la etiqueta json. Mostrar todas las entradas

martes, 17 de febrero de 2009

Pasar un array de PHP a JavaScript mediante JSON

Por algún motivo, pasar arrays de PHP a JavaScript es más complicado de lo que debería ser. Por fortuna, para arreglar el asunto podemos traducir el array de PHP a JSON.

Cualquier servidor de PHP mayor que el 5 tiene la siguiente función:

$arrayAJS=json_encode($arrayEnPHP);

Nota muy importante: nada más pasar el array PHP a JSON y enviarlo como parámetro, la función javascript lo considera un array normal y corriente. No hace falta deserializarlo.

lunes, 16 de febrero de 2009

Crear un array unidimensional en JSON

No confundir con los arrays asociativos.

{

"arrayUnidimensional" : [0,0,2,3,0,1,0,5]



}

Crear Request Object para recibir JSON usando AJAX

Omito el lado del servidor, pero el archivo php debe generar un texto que respete la sintaxis.

var the_object;
var http_request = new XMLHttpRequest();
http_request.open( "GET", url, true );
http_request.send(null);
http_request.onreadystatechange = function () {
if ( http_request.readyState == 4 ) {
if ( http_request.status == 200 ) {
var inputJSON=http_request.responseText;

var
my_JSON_object = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(
text.replace(/"(\\.|[^"\\])*"/g, ''))) &&
eval('(' + inputJSON + ')');


} else {
alert( "There was a problem with the URL." );
}
http_request = null;
}
};
Es conveniente limpiar la cadena enviada por el servidor para evitar posibles inyecciones de código.