Tom's Guide > Forum > Programmation > Restriction requête de deux tables concatenées

Restriction requête de deux tables concatenées

Forum Programmation : Restriction requête de deux tables concatenées

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour à tous, je "m'amuse" depuis plusieurs jours à finir mon projet de bac que je devrais présenter, qui consiste à gérer des gîtes.

Mon problème, lorsqu'un client éxécute la requête via un formulaire (Date début du séjour: XX/XX/XXX, Date fin du séjour: XX/XX/XXXX, Nombre de chambres souhaitées: X)
il faut que j'affiche les gîtes qui ne sont pas reservés pendant la période indiquée par l'utilisateur.

J'ai une table réservation:
Réservation: nores(clé primaire), datedebres, datefinres, nogiteres(clé externe à la table gite)

Une table Gite
Gite: nogite(clé primaire), tous pleins de champs concernant le gite.

Voilà mon code qui est censé limiter l'affichage aux gîtes non occupés pendant la période dite:

Code :
  1. $dateresdebform = $_GET['dateresdebform'];
  2.         $dateresfinform = $_GET['dateresfinform'];
  3.         $nbchambresform = $_GET['nbchambresform'];
  4.         $sql="Select dateresdeb, dateresfin, nogiteres, nogite, ruegite, cpgite, villegite, nbplaces, nbchambres, surface, jardin, cdproprio
  5.         FROM gite, reservation
  6.         where gite.nogite=reservation.nogiteres
  7.         and dateresdeb!=$dateresdebform
  8.         and nbchambres>=$nbchambresform
  9.         group by nogite asc";
  10.         $req=donne_resultat_SQL($sql);
  11.         while ($res = mysql_fetch_array($req))
  12.         {
  13.         echo "
  14.         <div align=center>
  15.         <table bordercolor=#000000 style=\"border-style: dashed; border-width: 1px 1px 1px 1px;\" cellpadding=5 cellspacing=2 width=450>
  16.             <tr>
  17.             <td></td>
  18.             <td style=\"border-style: dashed; border-width: 0px 0px 0px 1px;\" bgcolor=#E8E8E8 width=150><font colOR=a70000>Adresse du gîte</font</td>
  19.             <td style=\"border-style: dashed; border-width: 0px 0px 0px 1px;\" bgcolor=#E8E8E8 width=150><font colOR=a70000>Places / Chambres</font></td>
  20.             </tr>
  21.             <tr>
  22.             <td class=tdcenter width=150>Présentation du gîte <span class=puce2>".$res['nogite']."</span></td>
  23.                 <td style=\"border-style: dashed; border-width: 0px 0px 0px 1px;\" class=tdcenter width=150>
  24.                 ".$res['ruegite']."
  25.                 <br>
  26.                 ".$res['cpgite']." ".$res['villegite']."
  27.                 </td>
  28.                 <td style=\"border-style: dashed; border-width: 0px 0px 0px 1px;\" class=tdcenter>
  29.                 Places: <span class=puce>".$res['nbplaces']."</span>
  30.                 <br>
  31.                 Chambres: <span class=puce2>".$res['nbchambres']."</span>
  32.                 </td>
  33.             </tr>
  34.             <tr>
  35.             <td colspan=3 ><div align=right><i><a href=consultation_gite.php?nogite=".$res['nogite']."&cdproprio=".$res['cdproprio']."><span class=puce>++</span> Cliquez-ici pour plus d'informations...</a></i></div></td>
  36.             </tr>
  37.         </table>
  38.         </div><br>";



Je pense que c'est un problème au niveau de mes restrictions, le résultat est qu'il m'affiche tous les gîtes qui ont une réservation, les gîtes qui ne sont pas présents dans la table réservation ( cest qu'ils ne sont pas reservés ) ne sont pas affichés. De plus la contraite "nbchambres" n'est pas prise en compte :(

Merci de votre aide :)

( petit screen du formulaire qui peut aider à comprendre )

http://aaarohhh.free.fr/upload/ex.jpg


Message édité par aroh le 01-05-2007 à 19:49:26
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.
- 0 +

up, besoin d'aide ! :p

Répondre à aroh

bonsoir, c'est quoi comme base de données?
pour mysql il faut que tu vois du cote de la command EXISTS/ NOT EXISTS:
http://dev.mysql.com/doc/refman/5. [...] eries.html

Répondre à coca25
- 0 +

bonsoir, il sagit d'une base de données de type mysql oui

Répondre à aroh

le lien que je t'ai indiqué te montre comment faire

Répondre à coca25
- 0 +

merci je vais essayer de voir, enfin dabord de comprendre le système

Répondre à aroh
Tom's Guide > Forum > Programmation > Restriction requête de deux tables concatenées
Aller à :

Il y a 2933 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens