Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Pasar array dinámico de javascript a php

Estas en el tema de Pasar array dinámico de javascript a php en el foro de Javascript en Foros del Web. Buenas compañeros, Tengo un array que se crea de forma dinámica en javascript y cuando se introducen todos los elementos debo grabarlos en la base ...
  #1 (permalink)  
Antiguo 14/10/2013, 13:00
 
Fecha de Ingreso: julio-2013
Mensajes: 44
Antigüedad: 10 años, 10 meses
Puntos: 0
Pasar array dinámico de javascript a php

Buenas compañeros,

Tengo un array que se crea de forma dinámica en javascript y cuando se introducen todos los elementos debo grabarlos en la base de datos mediante php.

¿Cómo puedo pasar una variable de javascript a php?. En este caso sería un array.

Para simplificar...

Si tengo este array en javascript:
Código Javascript:
Ver original
  1. <script>
  2.     var array = [1, 2, 3];
  3. </script>

¿Cómo hago para tener disponible ese array en PHP?

He hecho lo de esta dirección
http://www.forosdelweb.com/f127/pasar-array-javascript-php-465002/

Lo que propone locojars no me funciona. Lo que propone MaBoRaK tampoco, me dice: Call to undefined function parseJSON().

Graciasss
  #2 (permalink)  
Antiguo 15/10/2013, 07:32
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 8 meses
Puntos: 578
Respuesta: Pasar array dinámico de javascript a php

parseJson() está en el framework Jquery... También puedes usar JSON.Parse() en puro y duro js.

Saludos
  #3 (permalink)  
Antiguo 08/11/2013, 04:27
 
Fecha de Ingreso: julio-2013
Mensajes: 44
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Pasar array dinámico de javascript a php

Buenas,

Al final lo he hecho como propuso locojars pero con una modificación, utilizando join() en lugar de toString()

Aquí lo dejo:


Código HTML:
Ver original
  1.  
  2. <form name="form1" method="post" action="" onsubmit="Enviar()">

Código Javascript:
Ver original
  1. <script>
  2.  
  3.     var miarray = [1, "servicio", 30, 2, "hola que hay", 40];
  4.     var cad = miarray.join("*");
  5.  
  6.     function Enviar()
  7.     {
  8.         document.getElementById("varphp").value = cad;
  9.     }
  10.    
  11. </script>

Código PHP:
Ver original
  1. <?php
  2.  
  3.     if(isset($_POST['submit']))
  4.     {
  5.         $vec = explode("*", $_POST[varphp]);
  6.         echo count($vec);
  7.         exit;
  8.     }
  9.  
  10.     echo "<input type=hidden name=varphp id=varphp>";
  11.     echo "<input type=submit name=submit id=submit value=Aceptar>";
  12.  
  13. ?>

Código HTML:
Ver original
  1. </form>
  2.  
  3. </html>


Graciasss
  #4 (permalink)  
Antiguo 08/11/2013, 06:44
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: Pasar array dinámico de javascript a php

Sólo se pueden enviar cadenas de texto por GET o por POST al servidor. Si es un array de números, se puede enviar al servidor una cadena con esos números separador por ejemplo por comas, y luego en el PHP partir esa cadena por las comas y así obtener otra vez un array de números.

Para enviar objetos de javascritp al servidor, se utiliza el formato JSON, que no es más que una cadena de texto que representa a un objeto javascript.

Para crear cadenas JSON se usa JSON.stringify(objeto). Esa cadena resultante es la que se manda. Luego PHP puede darle la vuelta con json_decode(), que convierte el objeto javascript en un array asociativo de PHP.

Etiquetas: funcion, js, php, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:18.