Tengo un problemon con unos select de tres niveles... todo funciona perfectamente excepto un pequeño detalle pero muy importante, a ver como puedo explicar esto sin liarlo demasiado.
Tres select
Marcas
Modelos
Versiones
Primer select (seleccionas la marca)
Segundo select, te muestra los modelos que corresponden a la marca seleccionada. (seleccionas el modelo)
Aqui esta el problema
Tercer select, te muestra las versiones del modelo seleccionado pero tambien muestra los modelos que no corresponden a la marca selecciona en el primer select.
Dejo el php que creo que es donde esta el error...
Código PHP:
Ver original
"Marcas"=>"marcas", "Modelos"=>"modelos", "Versiones"=>"versiones" ); function validaSelect($selectDestino) { // Se valida que el select enviado via GET exista global $listadoSelects; else return false; } function validaOpcion($opcionSeleccionada) { // Se valida que la opcion seleccionada por el usuario en el select tenga un valor numerico else return true; } $selectDestino=$_GET["select"]; $opcionSeleccionada=$_GET["opcion"]; if(validaSelect($selectDestino) && validaOpcion($opcionSeleccionada)) { $tabla=$listadoSelects[$selectDestino]; if($tabla=='modelos'){ $consulta=mysql_query("SELECT modelo, descripcion FROM $tabla WHERE marca='$opcionSeleccionada' ORDER BY descripcion ASC") or die(mysql_error()); // Comienzo a imprimir el select echo "<select name='".$selectDestino."' id='".$selectDestino."' class='selectForm' onChange='cargaContenido(this.id)'>"; echo "<option value='0'>Selecciona una opcion</option>"; { // Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion // Imprimo las opciones del select echo "<option value='".$registro[0]."'>".$registro[1]."</option>"; } echo "</select>"; } elseif ($tabla=='versiones'){ $consulta=mysql_query("SELECT version, nombre FROM $tabla WHERE modelo='$opcionSeleccionada' ORDER BY nombre ASC") or die(mysql_error()); // Comienzo a imprimir el select echo "<select name='".$selectDestino."' id='".$selectDestino."' class='selectForm' onChange='cargaContenido(this.id)'>"; echo "<option value='0'>Selecciona una opcion</option>"; { // Convierto los caracteres conflictivos a sus entidades HTML correspondientes para su correcta visualizacion // Imprimo las opciones del select echo "<option value='".$registro[0]."'>".$registro[1]."</option>"; } echo "</select>"; } } ?>