PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 26-12-2009 14:55:25

squal
Membre
Inscription : 26-12-2009
Messages : 4

Imbriquement de swich et de php/mysql ...

Bonjour a tous et bonnes fêtes de fin d'année, ...

J'ai un soucis sur la page suivante :
http://southrider.fr/pg/pg/support.php? … agne#liste

Comme vous pouvez le voir, a peu près tout fonctionne sur les recherches sauf 2 "trucs" !

- La recherche par région, sauf s'il s'agit de la région Aquitaine (les autres ne fonctionne pas ! Pourquoi, voila la question ... ?)

- La recherche par département mais uniquement sur le département "Espagne" (dans le champ "dep" est normalement ecrit le numéro du département, sauf pour l'Espagne ou j'ai marqué "Espagne" ... comprend pas pourquoi il veux pas le prendre, il me semble pourtant que la table sql est correcte ...)

Si certain on des idées ...
Un grand merci d'avance,

Profitez bien des vacances,

Pascal


Voici le code php pour toute les recherches :
(oui c'est un peu lourd, ... il y a un affichage sur 2 colonnes pour la 1er partie)

Encore en dessous, il y la prise d'écran de la table sql

//Calcul des limites
      if ($affichage == liste)
        {
          switch($choix)
            {
            case 'tout':
              $rq = "select distinct id from tbl_circuit where type='MX' order by id";
              break;
            case 'ufolep':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
              order by id";
              break;
            case 'ffm':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
              order by id";
              break;
            case 'alfa':
              $rq = "select distinct id from tbl_circuit where type='MX' order by lieu";
              break;
            case 'ufolep-alfa':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
              order by lieu";
              break;
            case 'ffm-alfa':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
              order by lieu";
              break;
            case 'dep':
              $rq = "select distinct id from tbl_circuit where type='MX'
              order by dep";
              break;
            case 'ufolep-dep':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
              order by dep";
              break;
            case 'ffm-dep':
              $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
              order by dep";
              break;
             
            case 'dep2':
              $rq = 'select distinct id from tbl_circuit
              where type="MX" and dep='.$choix2.'
              order by lieu';
              break;
             
            case 'region':
              switch($choix2)
                {
                  case 'aquitaine':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu';
                  break;
                 
                  case 'auvergne':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu';
                  echo 'Bloque 0<br>';
                  break;
                 
                  case 'languedoc':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu';
                  break;
                 
                  case 'limousin':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu';
                  break;
                 
                  case 'midipy':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu';
                  break;
                 
                  case 'poitou':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu';
                  break;
                 
                  case 'provence':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu';
                  break;
                 
                  case 'rhone':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu';
                  break;
                }
                break;
             
            default:
              $rq = "select distinct id from tbl_circuit where type='MX' order by lieu";
            }
        }
      else
        {
          $rq = "select distinct id from tbl_circuit where type='MX' order by lieu";
        }
       
      $result = mysql_query($rq) or die ("Affichage des circuits impossibles");
      $nbre_mx = mysql_num_rows($result);
      $limite1 = round($nbre_mx / 2);
      $limite2 = $nbre_mx - 1;
     
      //affichage 1ere partie
      if ($affichage == liste)
        {
          switch($choix)
            {
            case 'tout':
              $rq = 'select distinct id from tbl_circuit where type="MX" order by id limit 0,'.$limite1.'';
              break;
            case 'ufolep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by id limit 0,'.$limite1.'';
              break;
            case 'ffm':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by id limit 0,'.$limite1.'';
              break;
            case 'alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX" order by lieu limit 0,'.$limite1.'';
              break;
            case 'ufolep-alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by lieu limit 0,'.$limite1.'';
              break;
            case 'ffm-alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by lieu limit 0,'.$limite1.'';
              break;
            case 'dep':
              $rq = 'select distinct id from tbl_circuit where type="MX" order by dep limit 0,'.$limite1.'';
              break;
            case 'ufolep-dep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by dep limit 0,'.$limite1.'';
              break;
            case 'ffm-dep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by dep limit 0,'.$limite1.'';
              break;
             
            case 'dep2':
              $rq = 'select distinct id from tbl_circuit
              where type="MX" and dep='.$choix2.'
              order by lieu limit 0,'.$limite1.'';
              break;
             
            case 'region':
              switch($choix2)
                {
                  case 'aquitaine':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'auvergne':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu limit 0,'.$limite1.'';
                  echo 'Bloque 1<br>';
                  break;
                 
                  case 'languedoc':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'limousin':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'midipy':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'poitou':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'provence':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                 
                  case 'rhone':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu limit 0,'.$limite1.'';
                  break;
                }
                break;
             
            default:
              $rq = 'select distinct id from tbl_circuit where type="MX" order by lieu limit 0,'.$limite1.'';
            }
        }
      else
        {
          $rq = 'select distinct id from tbl_circuit where type="MX" order by lieu limit 0,'.$limite1.'';
        }
     
     
      $result = mysql_query($rq) or die ("Affichage des circuits impossibles");
      while ($ligne = mysql_fetch_array($result))
        {
          extract($ligne);
          if ($id != "")
            {
              $sql = "select * from tbl_circuit where id='$id'";
              $req = mysql_query($sql) or die ("Lecture des données impossible");
              $data = mysql_fetch_array($req);
              $lieu = $data['lieu'];
              $dep = $data['dep'];
                   
              echo '<a href="../pg/support.php?rub=circuit-indv&id='.$id.'" class="texte">'.$lieu.' ('.$dep.')</a>';
              echo '<br>';
            }
        }
      ?>
     
      </td>
            <td width="12" align="left" valign="top"> </td>
            <td width="225" align="left" valign="top"><br />
     
      <?php
      //affichage 2eme partie
      echo '<br />';
      if ($affichage == liste)
        {
          switch($choix)
            {
            case 'tout':
              $rq = 'select distinct id from tbl_circuit where type="MX"
              order by id limit '.$limite1.','.$limite2.'';
              break;
            case 'ufolep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by id limit '.$limite1.','.$limite2.'';
              break;
            case 'ffm':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by id limit '.$limite1.','.$limite2.'';
              break;
            case 'alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX"
              order by lieu limit '.$limite1.','.$limite2.'';
              break;
            case 'ufolep-alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by lieu limit '.$limite1.','.$limite2.'';
              break;
            case 'ffm-alfa':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by lieu limit '.$limite1.','.$limite2.'';
              break;
            case 'dep':
              $rq = 'select distinct id from tbl_circuit where type="MX"
              order by dep limit '.$limite1.','.$limite2.'';
              break;
            case 'ufolep-dep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by dep limit '.$limite1.','.$limite2.'';
              break;
            case 'ffm-dep':
              $rq = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by dep limit '.$limite1.','.$limite2.'';
              break;
             
            case 'dep2':
              $rq = 'select distinct id from tbl_circuit
              where type="MX" and dep='.$choix2.'
              order by lieu limit '.$limite1.','.$limite2.'';
              break;
             
            case 'region':
              switch($choix2)
                {
                  case 'aquitaine':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'auvergne':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  echo 'Bloque 2<br>';
                  break;
                 
                  case 'languedoc':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'limousin':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'midipy':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'poitou':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'provence':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                 
                  case 'rhone':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu limit '.$limite1.','.$limite2.'';
                  break;
                }
                break;
           
            default:
              $rq = 'select distinct id from tbl_circuit where type="MX" order by lieu limit '.$limite1.','.$limite2.'';
            }
        }
      else
        {
          $rq = 'select distinct id from tbl_circuit where type="MX" order by lieu limit '.$limite1.','.$limite2.'';
        }
     
      echo 'Bloque entre 2 et 3<br />';
     
      $result = mysql_query($rq) or die ("Affichage des circuits impossibles");
     
      echo 'Bloque entre 2 et 3 bis<br />';
     
      //affichage
      while ($ligne = mysql_fetch_array($result))
        {
          extract($ligne);
          if ($id != "")
            {
              $sql = "select * from tbl_circuit where id='$id'";
              $req = mysql_query($sql) or die ("Lecture des données impossible");
              $data = mysql_fetch_array($req);
              $lieu = $data['lieu'];
              $dep = $data['dep'];
                   
              echo '<a href="../pg/support.php?rub=circuit-indv&id='.$id.'" class="texte">'.$lieu.' ('.$dep.')</a>';
              echo '<br>';
            }
        }
      ?>
     
      </td>
            <td width="12" align="left" valign="top"> </td>
            <td width="225" align="left" valign="top">
     
     
      <img src="../../img-work/sous-titre/circuit/type-sx.jpg" /><br />
      <?php
      //recuperation des donnees sur la base SQL
      if ($affichage == liste)
        {
          switch($choix)
            {
            case 'tout':
              $rq = "select distinct id from tbl_circuit where type='SX'
              order by id";
              break;
            case 'ufolep':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ufolep' or type='SX' and licence='everybody'
              order by id";
              break;
            case 'ffm':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ffm' or type='SX' and licence='everybody'
              order by id";
              break;
            case 'alfa':
              $rq = "select distinct id from tbl_circuit where type='SX'
              order by lieu";
              break;
            case 'ufolep-alfa':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ufolep' or type='SX' and licence='everybody'
              order by lieu";
              break;
            case 'ffm-alfa':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ffm' or type='SX' and licence='everybody'
              order by lieu";
              break;
            case 'dep':
              $rq = "select distinct id from tbl_circuit where type='SX'
              order by dep";
              break;
            case 'ufolep-dep':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ufolep' or type='SX' and licence='everybody'
              order by dep";
              break;
            case 'ffm-dep':
              $rq = "select distinct id from tbl_circuit where type='SX' and licence='ffm' or type='SX' and licence='everybody'
              order by dep";
              break;
             
            case 'dep2':
              $rq = 'select distinct id from tbl_circuit
              where type="SX" and dep='.$choix2.'
              order by lieu';
              break;
             
            case 'region':
              switch($choix2)
                {
                  case 'aquitaine':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="24" or
                  type="SX" and dep="33" or
                  type="SX" and dep="40" or
                  type="SX" and dep="47" or
                  type="SX" and dep="64"
                  order by lieu';
                  break;
                 
                  case 'auvergne':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="03" or
                  type="SX" and dep="15" or
                  type="SX" and dep="43" or
                  type="SX" and dep="63"
                  order by lieu';
                  break;
                 
                  case 'languedoc':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="11" or
                  type="SX" and dep="30" or
                  type="SX" and dep="34" or
                  type="SX" and dep="48" or
                  type="SX" and dep="66"
                  order by lieu';
                  break;
                 
                  case 'limousin':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="19" or
                  type="SX" and dep="23" or
                  type="SX" and dep="87"
                  order by lieu';
                  break;
                 
                  case 'midipy':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="09" or
                  type="SX" and dep="12" or
                  type="SX" and dep="31" or
                  type="SX" and dep="32" or
                  type="SX" and dep="46" or
                  type="SX" and dep="65" or
                  type="SX" and dep="81" or
                  type="SX" and dep="82"
                  order by lieu';
                  break;
                 
                  case 'poitou':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="16" or
                  type="SX" and dep="17" or
                  type="SX" and dep="79" or
                  type="SX" and dep="86"
                  order by lieu';
                  break;
                 
                  case 'provence':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="04" or
                  type="SX" and dep="05" or
                  type="SX" and dep="06" or
                  type="SX" and dep="13" or
                  type="SX" and dep="84"
                  order by lieu';
                  break;
                 
                  case 'rhone':
                  $rq = 'select distinct id from tbl_circuit where
                  type="SX" and dep="01" or
                  type="SX" and dep="07" or
                  type="SX" and dep="26" or
                  type="SX" and dep="38" or
                  type="SX" and dep="42" or
                  type="SX" and dep="69" or
                  type="SX" and dep="73" or
                  type="SX" and dep="74"
                  order by lieu';
                  break;
                }
                break;
           
            default:
              $rq = "select distinct id from tbl_circuit where type='SX' order by lieu";
            }
        }
      else
        {
          $rq = "select distinct id from tbl_circuit where type='SX' order by lieu";
        }
     
      $result = mysql_query($rq) or die ("Affichage des circuits impossibles");
       
      //affichage
      while ($ligne = mysql_fetch_array($result))
        {
          extract($ligne);
          if ($id != "")
            {
              $sql = "select * from tbl_circuit where id='$id'";
              $req = mysql_query($sql) or die ("Lecture des données impossible");
              $data = mysql_fetch_array($req);
              $lieu = $data['lieu'];
              $dep = $data['dep'];
                   
              echo '<a href="../pg/support.php?rub=circuit-indv&id='.$id.'" class="texte">'.$lieu.' ('.$dep.')</a>';
              echo '<br>';
            }
        }
      ?>
     
     
     
       
      <br />
      <br />
     
     
            <img src="../../img-work/sous-titre/circuit/perso.jpg" /><br />
      <?php
      //recuperation des donnees sur la base SQL
      $rq = "select distinct id from tbl_circuit where type='perso' order by lieu";
      $result = mysql_query($rq) or die ("Affichage des circuits impossibles");
       
      //affichage
      while ($ligne = mysql_fetch_array($result))
        {
          extract($ligne);
          if ($id != "")
            {
              $sql = "select * from tbl_circuit where id='$id'";
              $req = mysql_query($sql) or die ("Lecture des données impossible");
              $data = mysql_fetch_array($req);
              $lieu = $data['lieu'];
              $dep = $data['dep'];
                   
              echo '<a href="../pg/support.php?rub=circuit-indv&id='.$id.'" class="texte">'.$lieu.'</a>';
              echo '<br>';
            }
        }
     
      //fermeture de la connection SQL
      mysql_close();
      ?>

Image2.png

Image3.png

Dernière modification par squal (26-12-2009 21:34:11)

Hors ligne

#2 26-12-2009 22:12:19

squal
Membre
Inscription : 26-12-2009
Messages : 4

Re : Imbriquement de swich et de php/mysql ...

Après 12 milliards de test, je les ai compté ...

- Pour la recherche par département : il y a erreur dés qu'il y a du texte dans le champ "dep". Tout fonctionne si je remplace "Espagne" par "01" par exemple ... seul hic, l'Espagne n'est pas dans le 01, enfin je crois pas lol

- Pour la recherche par région : il y a erreur uniquement quand les "dep" existent pas dans la base de donnée sql. Exemple avec Midi Py (ou il y a des dep dans la table) donc la recherche en Midi Py fonctionne. Contrairement il y a pas de circuit dans la table au niveau de la région Poitou Charente, du coup erreur !!!

Pourquoi ? ...

Merci d'avance a ceux qui se creuseront la tétounne ...

Hors ligne

#3 26-12-2009 22:12:59

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Imbriquement de swich et de php/mysql ...

Affichage des circuits impossibles 1

C'est le retour de ton die() pour les régions.
J'ai regardé vite fait le pavé de code mais rien ne m'a choqué dans ton écriture SQL, mais il y a une erreur ça c'est certain.
Remplace le contenu de ton die() par mysql_error() et tu en connaitras la raison.

Hors ligne

#4 27-12-2009 00:40:31

squal
Membre
Inscription : 26-12-2009
Messages : 4

Re : Imbriquement de swich et de php/mysql ...

Merci pour ta réponse,

Alors pour la recherche par département "espagne" : Unknown column 'Espagne' in 'where clause'

Et pour la recherche par région :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-1' at line 6

Kezako cet Inglish, ici on parle patois, con ... lol

Hors ligne

#5 07-01-2010 17:57:51

Jiinn
Membre
Inscription : 06-01-2010
Messages : 22

Re : Imbriquement de swich et de php/mysql ...

Hello,

a vue d'oeil, il semblerait que tu n'es pas poster le début de ton code, la deuxième erreur est signalé ligne 6 visiblement erreur de syntaxe mais je ne peux pas te renseigner plus sans voir.

la première de mon point de vue ca serait que la colonne Espagne n'existe pas dans ta Bdd ou qu'elle ne s'écrit pas comme ça ( majuscule ? ).

J'espère t'avoir aider.

Jiinn

Hors ligne

#6 13-01-2010 19:46:56

squal
Membre
Inscription : 26-12-2009
Messages : 4

Re : Imbriquement de swich et de php/mysql ...

Salut,

Merci Jiinn pour ta réponse et dsl pour ma réponse aussi tardive !
Je me recolle au problème tjs pas résolu ! Par contre j'ai modifier le code afin qu'il soit plus lisible et plus "propre" ...


<?php
      //connection a la base
      include "../inc/connect.php";
     
      //Calcul des limites
     
      switch($choix)
        {
          case 'ufolep':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
            order by id"
;
            break;
          case 'ffm':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
            order by id"
;
            break;
          case 'alfa':
            $rq = "select distinct id from tbl_circuit where type='MX' order by lieu";
            break;
          case 'ufolep-alfa':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
            order by lieu"
;
            break;
          case 'ffm-alfa':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
            order by lieu"
;
            break;
          case 'dep':
            $rq = "select distinct id from tbl_circuit where type='MX'
            order by dep"
;
            break;
          case 'ufolep-dep':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ufolep' or type='MX' and licence='everybody'
            order by dep"
;
            break;
          case 'ffm-dep':
            $rq = "select distinct id from tbl_circuit where type='MX' and licence='ffm' or type='MX' and licence='everybody'
            order by dep"
;
            break;
             
          case 'dep2':
            $rq = ' select distinct id from tbl_circuit
            where type="MX" and dep='
.$choix2.'
            order by lieu'
;
            break;
             
          case 'region':
            switch($choix2)
              {
                case 'aquitaine':
                $rq = 'select distinct id from tbl_circuit where
                type="MX" and dep="24" or
                type="MX" and dep="33" or
                type="MX" and dep="40" or
                type="MX" and dep="47" or
                type="MX" and dep="64"
                order by lieu'
;
                break;
                 
                case 'auvergne':
                $rq = 'select distinct id from tbl_circuit where
                type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu'
;
                  echo 'Bloque 0<br>';
                  break;
                 
                  case 'languedoc':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu'
;
                  break;
                 
                  case 'limousin':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu'
;
                  break;
                 
                  case 'midipy':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu'
;
                  break;
                 
                  case 'poitou':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu'
;
                  break;
                 
                  case 'provence':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu'
;
                  break;
                 
                  case 'rhone':
                  $rq = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu'
;
                  break;
                }
                break;
             
          default:
            $rq = "select distinct id from tbl_circuit where type='MX' order by lieu";
        }
       
      $result = mysql_query($rq) or mysql_error();
      $nbre_mx = mysql_num_rows($result);
      $limite1 = round($nbre_mx / 2);
      $limite2 = $nbre_mx - 1;
     
     
     
     
     
      //calcul des affichages : MX partie 1 / MX partie 2 / SX
     
      switch($choix)
        {
            case 'alfa':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX"
              order by lieu'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX"
              order by lieu limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX"
              order by lieu limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX"
              order by lieu'
;
              break;
            case 'ufolep-alfa':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by lieu'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by lieu limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by lieu limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX" and licence="ufolep" or type="SX" and licence="everybody"
              order by lieu'
;
              break;
            case 'ffm-alfa':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by lieu'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by lieu limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by lieu limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX" and licence="ffm" or type="SX" and licence="everybody"
              order by lieu'
;
              break;
            case 'dep':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX"
              order by dep'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX"
              order by dep limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX"
              order by dep limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX"
              order by dep'
;
              break;
            case 'ufolep-dep':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by dep'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by dep limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX" and licence="ufolep" or type="MX" and licence="everybody"
              order by dep limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX" and licence="ufolep" or type="SX" and licence="everybody"
              order by dep'
;
              break;
            case 'ffm-dep':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by dep'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by dep limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX" and licence="ffm" or type="MX" and licence="everybody"
              order by dep limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX" and licence="ffm" or type="SX" and licence="everybody"
              order by dep'
;
              break;
             
            case 'dep2':
              $rq_mx = 'select distinct id from tbl_circuit where type="MX" and dep='.$choix2.'
              order by lieu'
;
              $rq_mx1 = 'select distinct id from tbl_circuit where type="MX" and dep='.$choix2.'
              order by lieu limit 0,'
.$limite1.'';
              $rq_mx2 = 'select distinct id from tbl_circuit where type="MX" and dep='.$choix2.'
              order by lieu limit '
.$limite1.','.$limite2.'';
              $rq_sx = 'select distinct id from tbl_circuit where type="SX" and dep='.$choix2.'
              order by lieu'
;
              break;
             
            case 'region':
              switch($choix2)
                {
                  case 'aquitaine':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="24" or
                  type="MX" and dep="33" or
                  type="MX" and dep="40" or
                  type="MX" and dep="47" or
                  type="MX" and dep="64"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="24" or
                  type="SX" and dep="33" or
                  type="SX" and dep="40" or
                  type="SX" and dep="47" or
                  type="SX" and dep="64"
                  order by lieu'
;
                  break;
                 
                  case 'auvergne':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="03" or
                  type="MX" and dep="15" or
                  type="MX" and dep="43" or
                  type="MX" and dep="63"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="03" or
                  type="SX" and dep="15" or
                  type="SX" and dep="43" or
                  type="SX" and dep="63"
                  order by lieu'
;
                  break;
                 
                  case 'languedoc':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="11" or
                  type="MX" and dep="30" or
                  type="MX" and dep="34" or
                  type="MX" and dep="48" or
                  type="MX" and dep="66"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="11" or
                  type="SX" and dep="30" or
                  type="SX" and dep="34" or
                  type="SX" and dep="48" or
                  type="SX" and dep="66"
                  order by lieu'
;
                  break;
                 
                  case 'limousin':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="19" or
                  type="MX" and dep="23" or
                  type="MX" and dep="87"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="19" or
                  type="SX" and dep="23" or
                  type="SX" and dep="87"
                  order by lieu'
;
                  break;
                 
                  case 'midipy':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="09" or
                  type="MX" and dep="12" or
                  type="MX" and dep="31" or
                  type="MX" and dep="32" or
                  type="MX" and dep="46" or
                  type="MX" and dep="65" or
                  type="MX" and dep="81" or
                  type="MX" and dep="82"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="09" or
                  type="SX" and dep="12" or
                  type="SX" and dep="31" or
                  type="SX" and dep="32" or
                  type="SX" and dep="46" or
                  type="SX" and dep="65" or
                  type="SX" and dep="81" or
                  type="SX" and dep="82"
                  order by lieu'
;
                  break;
                 
                  case 'poitou':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="16" or
                  type="MX" and dep="17" or
                  type="MX" and dep="79" or
                  type="MX" and dep="86"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="16" or
                  type="SX" and dep="17" or
                  type="SX" and dep="79" or
                  type="SX" and dep="86"
                  order by lieu'
;
                  break;
                 
                  case 'provence':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="04" or
                  type="MX" and dep="05" or
                  type="MX" and dep="06" or
                  type="MX" and dep="13" or
                  type="MX" and dep="84"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="04" or
                  type="SX" and dep="05" or
                  type="SX" and dep="06" or
                  type="SX" and dep="13" or
                  type="SX" and dep="84"
                  order by lieu'
;
                  break;
                 
                  case 'rhone':
                  $rq_mx = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu'
;
                  $rq_mx1 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu limit 0,'
.$limite1.'';
                  $rq_mx2 = 'select distinct id from tbl_circuit where
                  type="MX" and dep="01" or
                  type="MX" and dep="07" or
                  type="MX" and dep="26" or
                  type="MX" and dep="38" or
                  type="MX" and dep="42" or
                  type="MX" and dep="69" or
                  type="MX" and dep="73" or
                  type="MX" and dep="74"
                  order by lieu limit '
.$limite1.','.$limite2.'';
                  $rq_sx = 'select distinct id from tbl_circuit where
                  type="SX" and dep="01" or
                  type="SX" and dep="07" or
                  type="SX" and dep="26" or
                  type="SX" and dep="38" or
                  type="SX" and dep="42" or
                  type="SX" and dep="69" or
                  type="SX" and dep="73" or
                  type="SX" and dep="74"
                  order by lieu'
;
                  break;
                }
                break;
             
            default:
            $rq_mx = 'select distinct id from tbl_circuit where type="MX"
            order by lieu'
;
            $rq_mx1 = 'select distinct id from tbl_circuit where type="MX"
            order by lieu limit 0,'
.$limite1.'';
            $rq_mx2 = 'select distinct id from tbl_circuit where type="MX"
            order by lieu limit '
.$limite1.','.$limite2.'';
            $rq_sx = 'select distinct id from tbl_circuit where type="SX"
            order by lieu'
;

        }
     
      //fermeture de la connection SQL
      mysql_close();
      ?>
   
   
   
    <?php
 

Hors ligne

Pied de page des forums