Cosa ne pensate del mio primo file PHP (verifica disponibilità stanze)?

Manuel Melluso

Nuovo Utente
31 Gen 2013
17
0
0
40
Buonasera a tutti,

volevo chiedervi un parere sul mio primo file php!
PHP:
<?php
	if (($_POST['giorni_in'])>=16 && ($_POST['mesi_in'])>=8 && ($_POST['giorni_out'])<=4 && ($_POST['mesi_out'])<=9)
	{
	echo "...occupata";
	}
	// condizione data precedente a quella occupata nel mese del check_in
	if (($_POST['giorni_in'])<16 && ($_POST['mesi_in'])==8 && ($_POST['giorni_out'])<16 && ($_POST['mesi_out'])==8)
	{
	echo "...libera";
	}
	// condizione data successiva a quella occupata nel mese del check_out
	if (($_POST['giorni_in'])>4 && ($_POST['mesi_in'])==9 && ($_POST['giorni_out'])>4 && ($_POST['mesi_out'])==9)
	{
	echo "...libera";
	}
	// condizione data precedente a quella occupata in tutti i mesi
	if (($_POST['giorni_in'])>=1 && ($_POST['mesi_in'])<8 && ($_POST['giorni_out'])>=1 && ($_POST['mesi_out'])<8)
	{
	echo "...libera";
	}
	// condizione data successiva a quella occupata in tutti i mesi
	if (($_POST['giorni_in'])>=1 && ($_POST['mesi_in'])>9 && ($_POST['giorni_out'])>=1 && ($_POST['mesi_out'])>9)
	{
	echo "...libera";
	}
	
	/*else{
	echo "...potrebbe esserci un periodo prenotato tra la data di check-in e quella di check-out!";
	}*/
?>
Sto iniziando a studiare questo linguaggio da qualche giorno; in particolare avrei bisogno di un "meccanismo" per verificare la disponibilità delle stanze di un piccolo B&B.

Diciamo che per adesso, dopo qualche bestemmiuccia qua e la, funziona! Solo che non riesco a pensare ad un modo per rilevare un caso di "intersezione" di date, cioè faccio un esempio:

stanza prenotata dal 16 ago al 4 sett; per il momento, come noterete, le risposte sono:

- occupato: se seleziono un arco di tempo dentro quel periodo;
- libero: se seleziono archi di tempo precedenti o successivi a quel periodo;

Domanda:

se nel form inserisco che voglio la stanza dal 1 ago al 20 ago come faccio a fargli dire che " tra il periodo selezionato c'è un'altra prenotazione"?

C'è qualche variante o, scusate ma non so come si possa chiamare, qualche funzione specifica di php per fare tutto questo?
Qualcosa del tipo: "la stanza è prenotata dal 1 al 10, se (selezioni una fascia di tempo tra 1 e 10) {echo...ecc;}"?

Questo è l'html se può interessare
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>

<body>
<form name="modulo" action="elabora_form.php" method="post">Dal
<select name="giorni_in">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
  <option value="16">16</option>
  <option value="17">17</option>
  <option value="18">18</option>
  <option value="19">19</option>
  <option value="20">20</option>
  <option value="21">21</option>
  <option value="22">22</option>
  <option value="23">23</option>
  <option value="24">24</option>
  <option value="25">25</option>
  <option value="26">26</option>
  <option value="27">27</option>
  <option value="28">28</option>
  <option value="29">29</option>
  <option value="30">30</option>
  <option value="31">31</option>  
</select>
<select name="mesi_in">
<option value="1">Gennaio</option>
  <option value="2">Febbraio</option>
  <option value="3">Marzo</option>
  <option value="4">Aprile</option>
  <option value="5">Maggio</option>
  <option value="6">Giugno</option>
  <option value="7">Luglio</option>
  <option value="8">Agosto</option>
  <option value="9">Settembre</option>
  <option value="10">Ottobre</option>
  <option value="11">Novembre</option>
  <option value="12">Dicembre</option>
</select>
al:<select name="giorni_out">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
  <option value="16">16</option>
  <option value="17">17</option>
  <option value="18">18</option>
  <option value="19">19</option>
  <option value="20">20</option>
  <option value="21">21</option>
  <option value="22">22</option>
  <option value="23">23</option>
  <option value="24">24</option>
  <option value="25">25</option>
  <option value="26">26</option>
  <option value="27">27</option>
  <option value="28">28</option>
  <option value="29">29</option>
  <option value="30">30</option>
  <option value="31">31</option>  
</select>
<select name="mesi_out">
<option value="1">Gennaio</option>
  <option value="2">Febbraio</option>
  <option value="3">Marzo</option>
  <option value="4">Aprile</option>
  <option value="5">Maggio</option>
  <option value="6">Giugno</option>
  <option value="7">Luglio</option>
  <option value="8">Agosto</option>
  <option value="9">Settembre</option>
  <option value="10">Ottobre</option>
  <option value="11">Novembre</option>
  <option value="12">Dicembre</option>
</select>
<input name="verifica" type="submit" value="submit" />
</form>

</body>
</html>

Suggerimenti?

Grazie
 

Discussioni simili