Ver Mensaje Individual
  #4 (permalink)  
Antiguo 03/03/2011, 05:37
Avatar de aniMAYtions
aniMAYtions
 
Fecha de Ingreso: diciembre-2007
Ubicación: Granada
Mensajes: 519
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: combos dependientes

Hola leve91.
Mira esta función, es javascript y la puedes cargar desde un onchange en el select inicial.
Código PHP:
Ver original
  1. <script languaje='javascript'>
  2. function rellenaComboAnidado(value_combo_origen)
  3. {
  4.     document.formulario.combo_destino.length=0;
  5.  
  6. //Si quieres que la primera fila sea un campo vacío
  7.     document.formulario.combo_destino.options[0] = new Option("","","defaultSelected","");
  8.  
  9.     var indice=1;
  10.     <?
  11.         $conexion = conectar();
  12.         $consulta = "SELECT * from tabla_combo_destino";
  13.         $resultado = mysql_query($consulta, $conexion);
  14.         if(mysql_num_rows($resultado)>0)
  15.         {
  16.             while($fila = mysql_fetch_assoc($resultado))
  17.             {
  18.    
  19.     ?>
  20.     if(value_combo_origen=='<?=$fila["campo_tabla_combo_destino"]?>')
  21.     {
  22.     document.formulario.combo_destino.options[indice] = new Option("<?=$fila["campo_muestra_tabla_combo_destino"]?>","<?=$fila["campo_tabla_combo_destino"]?>");
  23.     indice++;
  24.     }
  25.     <?
  26.             }
  27.         }
  28.     ?>
  29. };
  30.  
  31. </script>

Y cómo llamarlo?
Creas tu select inicial en php con tu consulta a la base de datos y le pones un evento onchange='javascript:rellenaComboAnidado(this.valu e)'.
El select de destino lo creas así
Código PHP:
select name='combo_origen' id='combo_origen' value=''></select
Y la función te lo rellenará. Te recuerdo que la página donde insertes esta función debe ser .php.

Un saludo y espero haberte ayudado.