Anche se non ho ancora capito come usare la funzione che mi hai detto (penso che cmq a forza di sperimentare lo scoprirò
) come posso avere la data che mi serve per fare i confronti in mysql?
Voglio dire, nel DB mysql le date hanno questo formato (anno-mese-giorno), giusto?
Come posso, a partire da un input post generato automaticamente da un calendario (che già ho ottenuto, tipo selezioni l'input della data e ti appare il calendario, selezioni la data sullo stesso la data ti spunta sull'input, insomma un calendario che restituisce l'input della data), fare in modo che la data sia riconosciuta in mysql o funzione php di confronto?
Dovrei usare una soluzione simile con un formato data così dal (01/12/2008) al (05/12/2008)
Codice PHP:
/*SCRIPT PER CONTROLLARE SE UNA CAMERA E' DISPONIBILE IN UN DETERMINATO PERIODO*/
//data inizio periodo
$INIdata = explode("/",$_POST['data_inizio']);//data presa dal form inviato
$INIgiorno = int($INIdata[0]);//questo dovrebbe essere il giorno (01);
$INImese = int($INIdata[1]);//questo il mese (12);
$INIanno = int($INIdata[2]);//questo l'anno (2008);
//data fine periodo
$FINdata = explode("/",$_POST['data_fine']);//data presa dal form inviato
$FINgiorno = int($FINdata[0]);//questo dovrebbe essere il giorno (05);
$FINmese = int($FINdata[1]);//questo il mese (12);
$FINanno = int($FINdata[2]);//questo l'anno (2008);
//dovrei ricomporre nel formato che m'interessa, giusto?
//quindi ricompongo il tutto per "combaciare" in mysql...
$dataINI_per_mysql = $INIanno."-".$INImese."-".$INIgiorno;
$dataFIN_per_mysql = $FINanno."-".$FINmese."-".$FINgiorno;
$periodo = array();//mi creo un array per il periodo
$disponibilita = array(); //un altro per la disponibilità
//devo ancora pensare come fare una funzione per calcolare il $periodo, se potete gentilmente aiutarmi ve ne sarei grato...
//in mysql potrei fare la query per vedere se un dato giorno è occupato tipo "DAL - AL"
for ($i=0;$i<$periodo;$i++){ //penso che si debba fare con un ciclo for il controllo, giusto?
$query="SELECT date FROM prenotazioni WHERE date='{$periodo[$i]}';";
if (!$query) {
$disponibilita[$i]=$periodo[$i]; //quel giorno si può prenotare;
}else{
$disponibilita[$i]=0; //così mi sfrutto lo zero per dire "Non c'è dispobilità per quel giorno";
}
}
//ho pensato che potesse uscire dall'eventuale funzione del periodo un array dove ogni slot è //una data calcolata in base al periodo...
Le mie domande adesso sono:
1. Come fare per calcolare il periodo?
2. Cosa sbaglio o come si calcola nella realtà una cosa del genere?
3. E se avessi più di una camera lo stesso giorno (come nei booking che ti danno ad esempio 5 camere disponibili di quelle che hanno creato precedentemente).
Grazie anticipate,