Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/10/2010, 08:34
Avatar de CazaresLuis
CazaresLuis
 
Fecha de Ingreso: septiembre-2010
Ubicación: Distrito Federal
Mensajes: 67
Antigüedad: 13 años, 7 meses
Puntos: 2
Información Respuesta: Ayuda con php y mysql (formularios)!

Cita:
Iniciado por arquidea Ver Mensaje
Hola amigos,

Estoy intentando crear un formulario donde los usuarios escojan mediante un desplegable la marca de un coche y quiero mostrar luego otro desplegable que por ejemplo si seleccionas en la marca "audi" el siguiente desplegable te muestre solo los modelos de auid por ejemplo "A1,A2,A3,..., no todos los que tengo almacenados en la base de datos, sino solo los de esa marca.

Para ello os comento que tengo dos tablas, una que se llama marcas (contiene idmarcas y nombremarca) y luego tengo otra tabla llamada modelos (contiene idmodelo, idmarca y nombremodelo)

Los códigos que tengo ahora mismo son:

Código PHP:
<?php

//Conexion con la base
$link mysql_connect("localhost","","");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("ernesto_coches",$link);

?>

<FORM METHOD="POST" ACTION="insertar.php">

<select name="marca">

<?php

    $sql 
"select * from marcas";
                  
    
$ql mysql_query($sql,$link) or die(mysql_error());
                  
    while(
$g mysql_fetch_array($ql)){

    echo 
'<option value="'.$g['idmarca'].'">'.$g['marca'].'</option>';
                  
    }

?>
</select></br></br>

<select name="modelo">

<?php

    $sql 
"select * from modelos";
                  
    
$ql mysql_query($sql,$link) or die(mysql_error());
                  
    while(
$g mysql_fetch_array($ql)){

    echo 
'<option value="'.$g['idmodelo'].'">'.$g['modelo'].'</option>';
                  
    }

?>
</select></br></br>

<INPUT TYPE="SUBMIT" value="Insertar">

</FORM>
Como puedo hacer para que una vez elegido el primero se carguen los modelos del segundo?

Espero haberme explicado con claridad, sino es así preguntar lo que necesitéis!

Muchas gracias de antemano!!
Hola hay dos formas una que al seleccionar la marca re cargues el formulario y detectes que valor traes en tu select, aqui el problema es que si tienes mas campos los perderías a menos que tambien detectes si estan llenos y pues los vielas a llenar al recargar, la segunda opción es que lo hagas con ajax y aqui no tienes que recargar el form, lo que haces son llamadas al server de forma asincrona, si aún no usas ajax te recomiendo uses jquery que trae una funcion $.ajax() que la verdad es muy sencilla y aprender como aplicarla también.

Saludos