A ver, a lo mejor no te he entendido bien.
- Tienes una tabla "piso" (Supongamos con un IdPiso como clave)
- Tienes una tabla "tipo" (Supongamos con un IdTipo como clave) para los distintos tipos de pisos: alquiler, venta...
IdPiso NombrePiso
-----------------------
1 mipiso1
2 mipiso2
IdTipo NombreTipo
-----------------------
1 en venta
2 en alquiler
no?
Simplemente te recomendaba que tuvieras una tabla
tipo_piso que relacionara un piso con sus diferentes tipos. Por ejemplo: Tienes el Piso1 (IdPiso 1) que puede estar en venta (IdTipo 1) y en alquiler (IdTipo2). Pues en la tabla tipo_piso inserta dos entradas para ambas relaciones:
IdTipoPiso IdPiso IdTipo
-----------------------
1 1 1
2 1 2
Ahora bien, cómo hacer la insercción??
Pon en le select:
<select name="operacion[]"...... Con ésto le dices que vas a recoger más de un valor.
Cuando recojas el contenido cn el POST['opciones'], tendrás un array con todas las opciones seleccionadas (Te recomiendo que trabajes con identificadores, ed, que le pongas en los value de cada option el identificador de la tabla
tipo para el tipo de piso correspondiente).
Supongamos q lo has hecho de esta forma. Tendrás un array de identificadores de tipo_piso no? Pues recorrelo e inserta para cada uno de estos identificadores haz un INSERT en la tabla
tipo_piso con el identificador del piso y el del tipo que recuperas del array enviado por el select.
Con ésto tienes relacionado cada piso con sus distintos tipos sin necesidad de tener un campo por tipo en la base de datos.
Así es como yo resuelvo estas relaciones, es simplemente una referencia por si quieres almacenar las relacioenes de esta forma. Chao