message par rapport à la requête inapproprié

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : message par rapport à la requête inapproprié

par oceane751 » 02 avr. 2006, 21:59

merci pour ta réponse

mais dans ma BDD j'ai aucune chambre de libre et j'ai comme message " il y a des chambres de libres 1

il y a des chambres de libres 2-3"

c'est bizard car quand j'execute ma requete dans easyphp, ya pas de soucis j'ai bien le resultat voulu, c'est à dire 0, c'est à dire qu'il n'y a aucune chambre de disponible

c'est embetant car j'ai vraiment l'impression que le code est bon :?

par Cyrano » 02 avr. 2006, 09:22

L'erreur vient de ce que tu récupère le retour de mysql_num_rows comme un booléen alors que ça doit être un entier : donc il manque la bonne comparaison, proposition de corrigé :
<?php
$sql1 = "SELECT COUNT(num_chambre)
         FROM appartenir
         WHERE num_categorie = '".$personne."'
         AND num_chambre NOT IN
            (
                SELECT num_chambre
                FROM reserver
                WHERE date_arrivee = '".$date."'
                AND date_depart = '".$date1."'
            )";
$tab_com = mysql_query($sql1);

$sql2 = "SELECT COUNT(num_chambre)
         FROM appartenir
         WHERE num_categorie = '".$personne1."'
         AND num_chambre NOT IN
            (
                SELECT num_chambre
                FROM reserver
                WHERE date_arrivee = '".$date."'
                AND date_depart = '".$date1."'
            )";
$tab_com1 = mysql_query($sql2);

$dispo  = mysql_num_rows($tab_com);
$dispo1 = mysql_num_rows($tab_com1);

echo "<br><br>";
if($dispo > 0)
{
    echo "il y a des chambres de libres 1";
}
else
{
    echo "Plus aucune chambre 1 personne n'est disponible<br><br> ";
}

echo "<br><br>";


if($dispo1 > 0)
{
    echo "il y a des chambres de libres 2-3";
}
else
{
    echo "Plus aucune chambre 2-3 personne n'est disponible";
}
?>

message par rapport à la requête inapproprié

par oceane751 » 02 avr. 2006, 04:37

bonjour
voilà mon problème
un cliet veut reservation d'une chambre il choisit entre 2 types : 1personne et 2-3 personnes
il peut choisisr lun ou l'autre mais peut choisir les 2 type de chambres.

mais à partir de là, si dans le cas où il n'y aurait pas de chambre disponible (pour lun des 2 types ou pour els 2), un message doit informer le client qu'il n'y en a plus de disponible.

mais mon problème est que, meme s'il me reste des chambres de libre, il m'affiche quand meme "aucune chambre 1 personne de dispo", "aucune chambre 2-3 personnes de dispo"

le code :
$tab_com = mysql_query("SELECT COUNT(num_chambre)
          FROM appartenir
          WHERE num_categorie = '".$personne."'
   AND num_chambre NOT IN 
   (
      SELECT num_chambre 
      FROM reserver 
      WHERE date_arrivee = '".$date."' 
         AND date_depart = '".$date1."')");


$tab_com1 = mysql_query("SELECT COUNT(num_chambre)
       FROM appartenir
       WHERE num_categorie = '".$personne1."'
   AND num_chambre NOT IN
   (
      SELECT num_chambre 
      FROM reserver
      WHERE date_arrivee = '".$date."' 
         AND date_depart = '".$date1."')");
         
$dispo=mysql_num_rows($tab_com);
$dispo1=mysql_num_rows($tab_com1);

 

echo "<br><br>";


   if($dispo )
   {
     echo "il y a des chambres de libres 1";
   }
     else {
      echo "Plus aucune chambre 1 personne n'est disponible<br><br> ";
   }

echo "<br><br>";


      if($dispo1 )
      {   
      echo "il y a des chambres de libres 2-3";
       }
       else {
         echo "Plus aucune chambre 2-3 personne n'est disponible";
      }




merci pour votre aide..