El tema es que estas tratando de hacer el codigo sin incorporar los datos que van entre ellas.
O sea... si tienes una consulta de la cual generas una tabla debes preguntar en la consulta, si la fecha es igual... me explico:
Código PHP:
Ver original//tomo los valores de las fecha introducidas
$fI = $_GET["fechaI"];
$fT = $_GET["fechaF"];
//ahora vamos a hacer un arreglo con las fechas que existen entre las fechas introducidas
//convertimos cada dia para que sea mas facil obtener los dias entre ellos
//estoy asumiendo que la fecha es dd-mm-yyyy
$finic = mktime(12,0,0,$arrFI[1],$arrFI[0],$arrFI[2]); $ffina = mktime(12,0,0,$arrFT[1],$arrFT[0],$arrFT[2]); //aca tenemos los dias entre las dos fechas
$x = abs(floor(($ffina - $finic)/60/60/24)); //contador
$y=0;
for($a=0;$a<=$x;$a++){
//a una fecha temporal le sumamos la cantidad de dias
$ftemp = mktime(12,0,0,$arrFI[1],$arrFI[0]+$a,$arrFI[2]); //creamos el arreglo con las fechas
//ojo que aca van a agregarse los dos dias (tanto el de inicio como el de fin)
$arrFechas['fecha'][$y] = date('d-m-Y',$ftemp); //le creo un flag para activarla si se encuentra en los datos
$arrFechas['activa'][$y] = false;
$y++;
}
$sql = "SELECT * FROM tabla WHERE fecha BETWEEN '$fI' AND '$fT'";
//aca se imprime tu tabla como siempre
/* CODIGO DE TU TABLA */
//ahora vamos a la celda en blanco...
//buscamos que clave es la que tiene la fecha
//agregamos la linea en blanco y activamos la fecha si no esta activada
if(!$arrFechas['activa'][$indice]){
$arrFechas['activa'][$indice] = true;
echo '<tr><td> </td></tr><!--impresion de celda vacia-->';
}//aca no necesitas hacer nada mas
}
Prueba a ver si esto soluciona tu problema.
Suerte!