dos select seguidos
Publicado por Charly (70 intervenciones) el 19/12/2018 16:56:54
Tengo que hacer este ejercicio antes del viernes y no me termina de salir, me explicaré.
Tengo en una base de datos países, ciudades y datos de esas ciudades, a la cual conecto bien.
Necesito hacer dos select en html seguidos, uno de países y otro de ciudades.
Hasta que no seleccione algo del primero no aparecerá nada en el segundo y al seleccionar de éste, aparecerá una tabla con datos de la tercera tabla.
Pues bien, el primer select funciona, pero el segundo no y ya le he dado muchas vueltas, pero no me sale.
Este es el código que he hecho:
Tengo en una base de datos países, ciudades y datos de esas ciudades, a la cual conecto bien.
Necesito hacer dos select en html seguidos, uno de países y otro de ciudades.
Hasta que no seleccione algo del primero no aparecerá nada en el segundo y al seleccionar de éste, aparecerá una tabla con datos de la tercera tabla.
Pues bien, el primer select funciona, pero el segundo no y ya le he dado muchas vueltas, pero no me sale.
Este es el código que he hecho:
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
<html>
<head>
<title>WORLD</title>
</head>
<body>
<?php
define("SERVIDOR","localhost");
define("USUARIO","root");
define("CLAVE","");
//define("BD","world");
$BD="world";
$db;
try{
if($BD!='')
$db=new PDO("mysql:host=".SERVIDOR.";dbname=".$BD.";charset=utf8",USUARIO,CLAVE,array(PDO::MYSQL_ATTR_INIT_COMMAND=>"SET NAMES 'utf8'"));
else
$db=new PDO("mysql:host=".SERVIDOR.";charset=utf8",USUARIO,CLAVE,array(PDO::MYSQL_ATTR_INIT_COMMAND=>"SET NAMES 'utf8'"));
$db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,true);
$db->setAttribute(PDO::NULL_TO_STRING,true);
if($BD==''){
$sql=file_get_contents('world.sql');
$this->ejecuta_SQL($sql);
}
}catch(PDOException $e){
die("<p><h3>No se ha podido establecer la conexión.
<p>Compruebe si está activado el servidor de bases de
datos MySQL.</h3></p>\n<p>Error: ".$e->getMessage()."</p>\n");
}
echo "<h1>EJERCICIO CONSULTA DE PAISES POR REGIONES</h1>
<form name='form1' method='post' action=\"index.php\">";
$sql1='SELECT Region FROM country';
$resultado1=$db->query($sql1);
echo "Selecciona Region: <select name='campo_busqueda1'>
<option>Selecciona...</option>";
while(($fila1=$resultado1->fetch(PDO::FETCH_ASSOC))!=NULL){
echo '<option value="'.$fila1["Region"].'">'.$fila1["Region"].'</option>';
};
echo "</select>";
$region=$_GET["campo_busqueda1"];
echo "<input type='submit' value='Enviar'>
<br>";echo $region;
$sql2='SELECT Name FROM country WHERE Region="$region"';
$resultado2=$db->query($sql2);
echo "Selecciona Pais: <select name='campo_busqueda2'>
<option>Selecciona...</option>";
while(($fila2=$resultado2->fetch(PDO::FETCH_ASSOC))!=NULL){
echo '<option value="'.$fila2["Name"].'">'.$fila2["Name"].'</option>';
};
echo "</select>
<input type='submit' value='Enviar'><br>
</form>";
?>
<table border=1>
<tr>
<th>Nombre</th>
<th>Poblacion</th>
</tr>
<?php
/*foreach(){
<tr><td></td><td></td></tr>
}*/
?>
</table>
</body>
</html>
Valora esta pregunta


1