Comment selectionné seulement les chambre disponible ?

Fermé
maryam - Modifié le 24 juin 2019 à 21:39
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 26 juin 2019 à 21:20
Bon soir, j'ai un projet en php et je doit selectionné seulement les chambre qui sont disponible par rapport à la date de debut (start) et date fin(end) , voila mon code :


<div class="form-group">
<label class="col-sm-2 control-label">Chambre</label>
<div class="col-sm-9">
<select class="form-control" name="id_chambre">
<option>Selectionnez une chambre</option>

<?php


$req=$bdd->query('SELECT * FROM chambre ' );


while ($donnees = $req->fetch()) {

$req2=$bdd->query('SELECT * FROM reservation_client ');

echo"<option value='".$donnees['id']."'>".($donnees['libelle']) ."</option> " ;


}
?>

</select>
</div>
</div>

2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 juin 2019 à 07:04
Bonjour
Et quel est le souci ?
La requête sql ? Le code php ?

Quelle est la structure de ta table ?
Que contient elle ?
Comment sais tu que une chambre est disponible ?
Qu'as tu essayé au juste ?
Sur quoi bloques tu exactement ?
0
je veux savoir comment faire pour selectionner seulement les chambres qui sont disponible
et j'ai deux tables : une table reservation qui contient l'id de la chambre et date debut et date fin de reservation.
et une table chambre qui contient le nom de la chambre .
dans le code Ci-dessus je selectionne tous les chambres mais moi je veux seulement les chambres disponible
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié le 25 juin 2019 à 13:34
Bonjour,

En supposant que :
:debutSejour est la date de début de la réservation ;
:finSejour est la date de fin de la réservation ;

Tu peux essayer une requête de ce genre :
SELECT c.* from chambre c
LEFT OUTER JOIN reservation r ON c.chambre_id = r.chambre_id AND r.dateDebut < :finSejour AND r.dateFin > :debutSejour
WHERE r.chambre_id IS NULL

(Je te laisse l'inclure correctement à ton php)

Xavier
0
Merci beaucoup
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > maryam
25 juin 2019 à 14:51
Et donc... la question concernait la requête SQL .... et non le code PHP.
Il aurait donc fallu poster dans le forum "Bases de données"
0
Non la question est comment faire ça en PHP
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > maryam
25 juin 2019 à 22:16
Donc la réponse de Reivax ne te sert à rien ??
0
Si tu sais comment je peux faire ça en php ça sera utile pour moi
0