PHP - Enviar un array php a otra pagina php por javascript y ajax

 
Vista:

Enviar un array php a otra pagina php por javascript y ajax

Publicado por Xavi (1 intervención) el 19/11/2018 16:38:50
Hola,

Tengo una pàgina donde creo un array y mediante un boton onclic llamo a una funciíon i le passo la url destino y el array, esta info la recoge la función javascript i por ajax la manda a la pàgina 2, me gustaria recoger el array y recuperar la información però no me llega nada.
Que puede ser? Os paso un ejemplo o la idea que tengo para pasar un array por ajax y recuperar la info en otra pagina.

Pagina1.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script>
function enviar_datos(url,env){
	$.ajax({
		type: "POST",
		url: url,
		data: {arrayaenviar: env},
		success: function(data)  {
			$("#contenido").html(data);
		}
	});
}
</script>
$array=array();
Array[]=54;
Array[]=32;
Array[]=55;
<a href="#"   onclick=" enviar_datos ('Pagina2.php',  <?php echo json_encode($Array);?>)" > enviar arrray </a>

Pagina2.php

1
2
3
4
5
6
<?php
$array=json_decode($_POST["env"]);
 
echo $array[0] . $array[1];
 
?>

Me seria de gran ayuda dar con este tema.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.081
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Enviar un array php a otra pagina php por javascript y ajax

Publicado por xve (6932 intervenciones) el 19/11/2018 18:25:45
Hola Xavi, tienes un par de errores...

1.- cuando defines las variables en el array, lo haces así:
1
2
3
4
$array=array();
Array[]=54;
Array[]=32;
Array[]=55;
y tiene que ser:
1
2
3
4
$array=array();
$array[]=54;
$array[]=32;
$array[]=55;

2.- Cuando pasar como parametro un valor un json, tienes que pasarlo entre comillas...
1
<a href="#" onclick=" enviar_datos ('x1.php',  <?php echo json_encode($array);?>)" > enviar arrray </a>
tiene que ser:
1
<a href="#" onclick=" enviar_datos ('x1.php',  '<?php echo json_encode($array);?>')" > enviar arrray </a>

3.- En post pasas la variable "arrayaenviar" por lo que en el archivo Pagina2.php tienes que cambiar esta linea:
1
$array=json_decode($_POST["env"]);
por esta:
1
$array=json_decode($_POST["arrayaenviar"]);

Con esto creo que te funcionara!!!

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 24
Ha disminuido su posición en 74 puestos en PHP (en relación al último mes)
Gráfica de PHP

Enviar un array php a otra pagina php por javascript y ajax

Publicado por Xavi (12 intervenciones) el 20/11/2018 07:49:43
Ha funcionado, mucha grácias por tu aportación!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar