ccc

JQuery: Serializar (enviar un array de PHP a JQuery y viceversa)

// fichero principal.php
$.ajax({
async: false,
type: "POST",
url: "fichero.php",
data: {},
success: function(data) {
var json_obj = $.parseJSON(data); // lo convierte a Array
},
   error: function(data) {
   }
});

// El fichero fichero.php devuelve:
<?php
....
echo json_encode($gran_array);  // lo convierte a fichero json
?>

----------------------------------

// El caso inverso (pasar un array de JQuery a PHP) es incluso más fácil:

$.ajax({
async: false,
type: "POST",
url: "fichero.php",
data: {
    arrCesta: arrCesta
},
success: function(data) {
alert(data);
}
});

// En fichero.php:
<?php
    print_r($_POST["arrCesta"]);
?>

6 comentarios:

  1. Excelente! muchas gracias, muy útil.

    ResponderEliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  3. Estimado, no sé si estoy haciendo mal...

    Una consulta, tengo 3 archivos: form.php (vista), main.js y graba.php

    En form
    * cargo un array, llamado arrayInt[]={'a','b','c'} e imprimo con json: echo json_encode($arrayInt);
    En main.js
    * tomo algunas variables, que envio por metodo post
    $.ajax({
    type: "POST",
    url: 'grabar.php',
    data: { nombre: nombre,
    },
    success: function(data) {
    console.log(data);
    alert("Los datos se han enviado.==>>");
    },
    * pero como tomo el array de php??
    En grabar.php
    * recibe las variables enviadas por el main
    $form_nombres = $_POST['nombre'];
    * también debe recibir el array enviado por main.js y nada.

    En conclusión como envio un array desde una php (formulario) a un js (main) y procesarlo en grabar.php?

    Espero tu valioso aporte.

    ResponderEliminar
    Respuestas
    1. Si el array es proveniente de un php y se envia a tu js, lo debes recibir como un JSON, de ahi solo recorres el json con un each y sacas los valores por su indice q proviene dl array php

      Eliminar
  4. valiosisimo aporte felicidaes!

    ResponderEliminar
  5. hola que tal tengo algo como esto input type='hidden' name='nombreSinonimo1[]' id='nombreSinonimo1[]' value=''/, como envio los todos los valores por con jquery y los envio por ajax a una pagina php en donde los quiero procesar cada uno

    ResponderEliminar