Bonjour à tous,
Comme vous l'avez vu dans le titre j'ai un soucis au niveau d'un enregistrement. Je m'explique, je travaille sur un projet concernant des gîtes. Pour ce projet je dois faire un formulaire permettant la réservation d'un client par un adhérent. La réservation s'effectue cependant j'ai voulu ajouter une requête SQL pour ne pas permettre l'ajout de deux réservations sur une même période (logique).
Je vous laisse découvrir mon script :
-------------------------------------
-----------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 <?php mysql_connect("localhost", "root", "GSI"); mysql_select_db("GitesDuVertige"); $dateDeb = $_POST['dateDeb']; $numGite = $_POST['numGite']; $dateFin = $_POST['dateFin']; // Requête vérif réservations $requete = 'SELECT * FROM RESERVATION '; $requete .= 'WHERE "$DateDebut" < DateResDeb AND "$DateFin" > DateResDeb '; $requete .= 'OR "$DateDebut" < DateResDeb AND "$DateFin" >DateResfin '; $requete .= 'OR "$DateDebut" > DateResDeb AND "$Datefin" < DateResfin '; $requete .= 'OR "$DateDebut" < DateResDeb AND "$Datefin" > DateResfin'; $verif=mysql_query($requete) or die (mysql_error()); if (mysql_num_rows($verif)>0) echo '<h1><center><strong>Il y a déjà une réservation sur cette période !</center></strong></h1>'; else $verif=mysql_query("INSERT INTO RESERVATION VALUES ('','$dateDeb','$dateFin',$numGite)") or die (mysql_error()); if($verif) { echo '<h1><center><strong>La réservation a bien été effectuée !</center></strong></h1>'; } mysql_close(); ?> </body> </html>
Le problème vient du fait que même si j'effectue une réservation sur une période déjà prise, ça m'affiche le message "La réservation a bien été effectuée !" alors qu'au contraire ça devrait m'afficher "Il y a déjà une réservation sur cette période".
Si vous avez cerné mon problème je vous prie de bien vouloir m'aider
Merci à tous et bonne soirée
Kerly.
Partager