Lo que pasa es que sin importar el valor sigues imprimiendo <option> al rededor del bloque lógico, y eso siempre va a generar una copión vacía.
Debes hacer algo así:
Cita: SI (HAY_VALOR) {
// ENTONCES IMPRIMO EL OPTION COMPLETO
}
// SI NO, ENTONCES NO IMPRIMO NADA