Bueno he analizado algo mas el codigo, esta bastante bien cuando los datos que deseas incluir en los selects no son muchos, pero cuando se trata de 8095 registros, como es mi caso, la pagina tarda bastante en generarse ya que crea un option por cada uno de los registros.
Lo ideal seria que creara todos los registros del primer select y solo los registros del segundo select que estan vinculados al dato del primero.
No se si me he explicado bien,
Voy a seguir estudiando el tema si doy con algo mejor os dare un toque.
Un saludo