buscar en un array asociativo un dato
Publicado por Sam (185 intervenciones) el 22/10/2017 18:27:36
Hola amigas/os, tengo un problema. pongo todo el codigo aqui para mayor claridad, a ver si me pueden ayudar.
Mi problema es que cuando meto el primer valor mediante el formulario , pues no se me muestra reflejado en el listado.
Pero al meter un segundo valor en el formulario y lo envio entonces me aparecen de una
vez de golpe , tanto el primer dato que mandé ( y que no se veia a lo primero) , mas el segundo dato mandado ahora.
Mi codigo es este:
Y el formulario:
gracias de antemano
Mi problema es que cuando meto el primer valor mediante el formulario , pues no se me muestra reflejado en el listado.
Pero al meter un segundo valor en el formulario y lo envio entonces me aparecen de una
vez de golpe , tanto el primer dato que mandé ( y que no se veia a lo primero) , mas el segundo dato mandado ahora.
Mi codigo es este:
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
session_start();
//RECIBIBOS LOS DATOS DEL FORMULARIO
if($_POST)
{
if(!empty($_POST['nombre']))
{
$nombre = $_POST['nombre'];
$masa = $_POST['masa'];
$velocidad = $_POST['velocidad'];
$mod = $_POST['mod'];
$array_pha = array();
$subArray_pha = array();
$_SESSION['subArray_pha'][] = array($nombre => $mod);
$array_pha = $_SESSION['array_pha'][] = $_SESSION['subArray_pha'];
echo '<h1>Listado de los PHAs</h1>';
foreach($array_pha as $subArray_pha)
{
if( !(array_key_exists($nombre, $subArray_pha)) or ($masa == '') or ($velocidad == '') or ($mod == '') )
{
foreach($subArray_pha as $nombre => $mod)
{
echo "<b>Nombre: </b>" . $nombre . " | <b>Mod: </b>" . $mod . "<br/>";
}
}
}
}
else
{
echo 'Falta el nombre del PHA';
}
}
Y el formulario:
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
<form name="form_pha" method="post" action="index.php">
<label>Nombre</label>
<input type="text" name="nombre" value="<?php if( isset($_POST['nombre']) ) { echo $_POST['nombre']; }?>" placeholder="del PHA" />
<br/><br/>
<label>Masa</label>
<input type="text" name="masa" value="<?php if( isset($_POST['masa']) ) { echo $_POST['masa']; }?>" placeholder="de 1 a 1.000.000.000. toneladas" />
<br/><br/>
<label>Velocidad</label>
<input type="text" name="velocidad" value="<?php if( isset($_POST['velocidad']) ) { echo $_POST['velocidad']; }?>" placeholder="de translación" />
<br/><br/>
<label>Distancia mínima orbital</label>
<input type="text" name="mod" value="<?php if( isset($_POST['mod']) ) { echo $_POST['mod']; }?>" placeholder="de 0.001 a 1.0" />
<br/><br/>
<input type="submit" name="enviar" value="introducir" />
</form>
gracias de antemano
Valora esta pregunta
0