Gaviotica:
Este codigo es para cargar un select basado en lo q se seleccione en otro.
El select principal (el q es independiente) es generos, y el dependiente es subgeneros. Aqui lo q hago es cargar n arreglos dependiendo de n registros de la tabla independiente, y lo lleno con las diferenetes opciones del menu independiente.
//funcion javascript 
function selectCombinado(principal, secundario)
{
   var seccion=document.getElementById(principal)
   var subseccion=document.getElementById(secundario)
   var indice = seccion.options[seccion.selectedIndex].value
   
   if (indice != 0) 
   {
      mis_subsecc=eval("secc_sub" + indice)
      num_seccisub = mis_subsecc.length
      subseccion.length = num_seccisub
      var vector=Array();
      
      for(i=0; i < num_seccisub; i++)
      {
         vector=mis_subsecc.split(",")
         subseccion.options.value=vector[0]
         subseccion.options.text=vector[1]
      }
   }
   else
   {
      subseccion.length = 1
      subseccion.options[0].value = "-"
      subseccion.options[0].text = "-"
   }
   
   subseccion.options[0].selected = true
} 
<?
//Cargo los arreglos 
$rs = consulta("SELECT IdGenero FROM generosalbum", $this -> conexion);
      
      if(registros($rs))
      {
         echo "<script>";
         
         while($row = mysql_fetch_array($rs)) 
         {
            echo "var secc_sub".$row[IdGenero]."= new Array('0,---'";
            $rs2 = consulta("SELECT IdSubgenero, nombre FROM subgeneroalbum WHERE IdGenero = '".$row[IdGenero]."'", $this -> conexion);
            
            if(registros($rs2))
               while($row2 = mysql_fetch_array($rs2)) 
                  echo ", '".$row2[IdSubgenero].",".$row2[nombre]."'";
               
            echo ")\n";
         }
      
         echo "</script>";
      }
?>
y listo, ahora en el evento onChange del select independiente escribo onChange="javascript:selectCombinado("genero", "subgenero")"
Espero te sirva,
PD, tienes un nick super, sera q eres linda?