Ricalcando in buona parte un database per prenotazioni alberghiere come illustrato nella guida di MySQL all'indirizzo http://database.html.it/guide/lezion...ioni-alberghi/ , sto mettendo su gli script in PHP.
Mi accade che una delle query mi funziona correttamente se la invio tramite PHPMyAdmin, ovvero mi vengono restituiti record, mentre non funziona attraverso lo script in PHP perché trova 0 risultati.
Di seguito il codice (dalla query in poi):
Codice PHP:
$sql = "LOCK TABLES camere c READ, prenotazioni p READ, prezzi READ, clienti WRITE, prenotazioni WRITE;"
. "SET @inizioPeriodo = '$data_in_numerica';"
. "SET @finePeriodo = '$data_out_numerica';"
. "SELECT c.* FROM camere c WHERE NOT EXISTS (SELECT * FROM prenotazioni p WHERE p.camera = c.n_camera AND (p.periodoDal < @finePeriodo AND @inizioPeriodo < p.periodoAl));";
$risultati_mysql = mysql_query($sql,$connessione);
$num_righe = mysql_num_rows($risultati_mysql);
if ($num_righe==0) {
echo "Non ci sono informazioni";
}
else {
echo "<h2>Camere libere nel periodo selezionato</h2>";
echo "<table border='1' cellspacing='0' cellpadding='6'>\n";
echo "<tr><th>Camera n°</th></tr>\n";
while ($riga = mysql_fetch_array($risultati_mysql)) {
$n_camera = $riga['n_camera'];
# visualizza i risultati
echo "<tr><td>$n_camera<a href=\"index.php?page=booking3&in_giorno=$in_giorno&in_mese=$in_mese&in_anno=$in_anno&out_giorno=$out_giorno&out_mese=$out_mese&out_anno=$out_anno&pers_per_camera=$pers_per_camera&n_camera=$n_camera\">Calcola il prezzo</a></td></tr>\n";
}
echo "</table>";
}
mysql_free_result($risultati_mysql);
mysql_close($connessione);