PHP - pasar matriz a otra pagina

 
Vista:
Imágen de perfil de Charly
Val: 182
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

pasar matriz a otra pagina

Publicado por Charly (69 intervenciones) el 24/09/2018 13:29:29
Estoy creando un pequeño formulario con un select para elegir un motorista y un botón buscar, que me lleva a otra página.
En la segunda tengo que mostrar una tabla con los grandes premios que ha corrido, el puesto en el que ha quedado y su puntuación.
La matriz la he creado en el primer archivo php y después de darle al botón de buscar, tiene que recorrer la matriz y guardarse las carreras de ese motorista y pasar esos datos a la segunda página para crear la tabla.
Tengo las dos páginas diseñadas, pero solo me falta saber como puedo guardar los datos de las carreras de una persona para mandarselos a la otra página.
Este es el código que tengo:
index.php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<html>
	<head>
		<title>MOTO GP</title>
	</head>
	<body bgcolor="#003399">
		<!-- <center> -->
			<hr>
				<img src=motogp.jpg>
  				<h1><font color="white">CLASIFICACION</font></h1>
  			<hr>
  			<form action="resultado.php" method="post">
  				<p><font face="Georgia,Times New Roman,Times,serif" size="3" color=white>
    			Seleccione el piloto que desea consultar:
    			<select name="piloto">
					<option value="Jorge Lorenzo">Jorge Lorenzo</option>
					<option value="Marc Marquez">Marc Marquez</option>
					<option value="Dani Pedrosa">Dani Pedrosa</option>
					<option value="Valentino Rossi">Valentino Rossi</option>
					<option value="Alvaro Bautista">Alvaro Bautista</option>
					<option value="Hector Barbera">Hector Barbera</option>
				</select>&nbsp;&nbsp;
				<input type="submit" value="Buscar">
    			</font></p>
    		</form>
		<!-- </center> -->
		<?php
			$pilotos=array(
				"Jorge Lorenzo"=>array(
					"Catar"=>4,
					"Americas"=>2,
					"España"=>2,
					"Francia"=>1,
					"Italia"=>3,
					"Cataluña"=>1,
					"Assen"=>2
				),
				"Marc Marquez"=>array(
					"Catar"=>2,
					"Americas"=>1,
					"España"=>1,
					"Francia"=>3,
					"Italia"=>2,
					"Cataluña"=>2,
					"Assen"=>1
				),
				"Dani Pedrosa"=>array(
					"Catar"=>3,
					"Americas"=>3,
					"España"=>4,
					"Francia"=>2,
					"Italia"=>4,
					"Cataluña"=>4,
					"Assen"=>4
				),
				"Valentino Rossi"=>array(
					"Catar"=>1,
					"Americas"=>4,
					"España"=>3,
					"Francia"=>4,
					"Italia"=>1,
					"Cataluña"=>3,
					"Assen"=>3
				),
				"Alvaro Bautista"=>array(
					"Catar"=>7,
					"Americas"=>5,
					"España"=>5,
					"Francia"=>5,
					"Italia"=>7,
					"Cataluña"=>6,
					"Assen"=>6
				),
				"Hector Barbera"=>array(
					"Catar"=>6,
					"Americas"=>7,
					"España"=>6,
					"Francia"=>7,
					"Italia"=>6,
					"Cataluña"=>5,
					"Assen"=>7
				),
			);
			if(isset($_POST['submit'])){
				$piloto=$_POST['piloto'];
				$arr_length=count($pilotos);
				for($i=0;$i<$arr_length;$i++){
					if($pilotos[$i]==$piloto){
						$long=count($piloto);
						for($j=0;$j<$long;$j++){
							$long[$j]
						}
					}
				}
			}
		?>
	</body>
</html>
En la línea 90 no se qué poner para resolver mi problema.
resultado.php:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<html>
	<head>
		<title>MOTO GP</title>
	</head>
	<body bgcolor="#003399">
		<!-- <center> -->
			<hr>
				<img src=motogp.jpg>
  				<h1><font color="white">INFORMACION PILOTO</font></h1>
  			<hr>
  			<?php $piloto=$_POST['piloto']; ?>
  			<p>La clasificacion de <?php echo $piloto; ?> es:</p>
  			<?php
  				echo '<table border=1>
  					<tr>
  						<td>Gran Premio</td><td>Posicion</td><td>Puntos</td>
  					</tr>
  					<tr>
  						<td></td><td></td><td></td>
  					</tr>';
  			?>
  		<!-- </center>-->
	</body>
</html>
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
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

pasar matriz a otra pagina

Publicado por Gonzalo (615 intervenciones) el 24/09/2018 15:05:30
Buenas tardes don Chary.

la unica forma de pasar informacion entre paginas es usando post, get (en html nativo) o base de datos.

veo complicado pasar el array desde php a la otra pagina, el procedimiento seria que guardaras la informacion en un hidden y recuperarlo en la otra pagina, yo usaria una base de datos o un archivo txt.

salu2.
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

pasar matriz a otra pagina

Publicado por xve (6935 intervenciones) el 24/09/2018 17:48:47
Aparte de lo que te ha comentado Gonzalo, puedes utilizar una variable de sesión o cookie, e incluso la base de datos del navegador.
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
Imágen de perfil de Charly
Val: 182
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

pasar matriz a otra pagina

Publicado por Charly (69 intervenciones) el 24/09/2018 17:55:11
Me he dado cuenta de que el error no está ahí, aunque no se pueda hacer.
El error estaba en que en el botón no había puesto name y lo llamaba mal en el isset.
Ahora dentro del isset he puesto esto, pero me dice que el count no puedo usarlo:
1
2
3
4
5
6
7
8
9
10
11
$piloto=$_POST['piloto'];
$arr_length=count($piloto);
for($i=0;$i<$arr_length;$i++){
    if($piloto[$i]==$piloto){
        $long=count($piloto[$i]);
        for($j=0;$j<$long;$j++){
            echo $piloto[$i][$j];
            ?> <input type='hidden' name="$piloto[$i][$j]" value="$j"> <?php
        }
    }
}
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