wilmer30 es correcto lo que dices, pero lo del espacio en blanco($cl ave), no creo que sea el problema, ya que me he topado con varios por aquí que tienen bien el código pero al postearlo se le colocan espacios dentro del código, claro no esta mal la observación

, y en cuanto a lo de la consulta, hay que colocar las fechas entre comillas
Código PHP:
Ver original$sql = 'SELECT * FROM reserva WHERE "'.$_POST['fechainicio'].'" AND "'.$_POST['fechafinal'].'" BETWEEN fecha_inicio AND fecha_final';
saludos.