Buenas tardes!!
Necesitaba hacer unos select dinamicos dependientes entre ellos, mirando por el foro he encontrado formas de hacerlo, una de ellas era mediante javascript y siempre se me complicaba algo la cosa, encontre otra aqui en el foro que a priori parecia mas facil y unicamente con codigo php y mysql.
La he estado probando y limando algunas cosas he conseguido que se acerque a lo que necesito. Utilizo datos de Mysql para los datos que tiene que mostrar
Pero tras muchas pruebas me doy cuenta que cuando selecciono algo del primer select al seleccionarlo pierdo las variables de la consulta de ese primer select y me desaparece los datos que se mostraba en el combobox. Esta claro que no se muestra la lista porque las variables que tiene el WHERE no tiene valor y es por ello que no aparece nada. Pero como puede ser esto?? Con el "selected" se hace algo que interfiera con las variables porque la verdad que no lo entiendo.
Se que es tema de esas variables porque si hago la consulta poniendo datos concretos me sale perfectamente, ¿pero donde pierdo los datos de las variables?
Aqui os paso el codigo espero que me puedan ayudar..
Muchas gracias y un saludo!!
<form name="FormEstadistico" method="post" action="MostrarEstadisticas.php" target="_blank">
<p align="center"><font face="Arial, Helvetica, sans-serif">Arido</font>:
<select onChange="window.location = this.options[this.selectedIndex].value; return true;" name="AridoId">
<?
$sql_Arido = mysql_query("SELECT 000AridosDescripcion.Material, 000Aridos.AridoId FROM 000Aridos INNER JOIN 000AridosDescripcion on 000Aridos.AridoId=000AridosDescripcion.AridoId WHERE 000Aridos.NumCliente=$NumeroCliente and 000Aridos.NumObra=$NumeroObra");
while($rowArido = mysql_fetch_array($sql_Arido))
{
?>
<option value="?AridoId=<?=$rowArido[1]?>"
<? if($AridoId==$rowArido[1])
{?>
selected<?}
?>><?= $rowArido[0]?>
</option>
<?
}
?>
</select>
</p>
<p align="center"><font face="Arial, Helvetica, sans-serif">Aplicacion</font>:
<select name="Aplicacion">
<option value="">Seleccione</option>
<? $sql_usos = mysql_query("SELECT AridoId,Nombre from 000aridos WHERE AridoId = '$AridoId'");
while($rowusos = mysql_fetch_array($sql_usos))
{
?>
<option value="<?=$rowusos[0]?>"><?=$rowusos[2]?></option>
<?
}?>
</select>
</p>
<p align="center">
<input type="submit" name="Submit" value="Enviar"></form>