bhe tu hai chiesto come fare unq query più flessibile. io ho risposto a quella domanda.
$sql = "SELECT * FROM tbl WHERE data1 BETWEEN '$data1' AND '$data2'
ora se vuoi più flessibilità nella query devi fare in modo che $data1 e $data2 non siano le date esatte selezionate dal cliente ma alla prima togli qualche giorno e alla seconda li aggiungi.
poi pensi a gestire la prenotazione