SWITCH + MYSQL

SWITCH + MYSQL - PHP - Programmation

Marsh Posté le 18-07-2014 à 12:55:10    

Bonjour,  
 
je souhaite intégrer dans une instruction switch des données à partir d'une base de données. Voilà ce que je souhaite obtenir :  

Code :
  1. switch ($indice) {
  2.     case 0:
  3.         $tous='selected';
  4.         break;
  5.     case 1:
  6.         $neuf='selected';
  7.         break;
  8.     case 2:
  9.        $rehab='selected';
  10.         break;
  11.    case 3 : etc...
  12. }


 
où les case 1, case 2, case 3, etc. sont à récupérer sur une base de donnée (le numéro + la variable $)
Aucun problème pour se connecter à la base de donnée et récupérer les infos, mon souci vient du format des données à exploiter.
je suis parti sur le code suivant :  

Code :
  1. switch ($indice)
  2. {
  3. case 0:
  4. $tous='selected';
  5. break;
  6. require('../Connect/connect.php');
  7. $categorie = "SELECT * FROM categorie WHERE cat_type='projet'";
  8. $result_categorie = mysql_query($categorie) or die('Query failed: ' . mysql_error());
  9. $nombre_categorie = mysql_num_rows($result_categorie);
  10. require('../Connect/stop.php');
  11. for($i = 0; $i < $nombre_categorie; $i++) {
  12.  $query_cat = mysql_fetch_array($result_categorie);
  13.  $type=stripslashes($query_cat['cat_nom']);
  14.  $type_id=stripslashes($query_cat['cat_id']);
  15.  echo "case $type_id:";
  16.  echo "${\"index_\".$type_id}='selected';";
  17.  echo "break;";
  18. }
  19. }


 
Malheureusement ça ne fonctionne pas.. J'ai essayé en enlevant les "echo", plus rien ne marche.  
 
Merci ;)
 
 

Reply

Marsh Posté le 18-07-2014 à 12:55:10   

Reply

Marsh Posté le 19-07-2014 à 11:41:41    

Personne n'a une idée sur la question ..?

Reply

Marsh Posté le 20-07-2014 à 09:08:52    

Un switch ici n'a aucun intérêt, un bête array et voilà, tu n'as plus de problèmes avec ton switch que tu voudrais dynamique.
 
Suffit d'ajouter tes données dans ton array.
 

Reply

Marsh Posté le 21-07-2014 à 20:38:19    

Merci pour ta réponse, mais je ne vois pas comment faire avec un array...
je cherches à récupérer la valeur pour un élément HTML <select> et définir quel élément est "selected"

Reply

Marsh Posté le 21-07-2014 à 20:58:36    

et voici ce que j'ai du côté <select>
 

Code :
  1. <select name=indice onchange="javascript: checkReponse(value); ">
  2. <?php
  3.   echo "<option value=0 $tous>tous les projets</option>";
  4.   require('../Connect/connect.php');
  5.    $categorie = "SELECT * FROM categorie WHERE cat_type='projet'";
  6.    $result_categorie = mysql_query($categorie) or die('Query failed: ' . mysql_error());
  7.    $nombre_categorie = mysql_num_rows($result_categorie);
  8.   require('../Connect/stop.php');
  9.    for($i = 0; $i < $nombre_categorie; $i++) {
  10.        $query_cat = mysql_fetch_array($result_categorie);
  11.        $type=stripslashes($query_cat['cat_nom']);
  12.        $type_id=stripslashes($query_cat['cat_id']);
  13.        echo "<option ".${"index_".$type_id}." value=".$type_id.">projets de ".$type."</option>";
  14.    }
  15. ?>
  16. </select>

Reply

Marsh Posté le 21-07-2014 à 21:12:11    

C'est bon je me suis débrouillé avec des if () {}

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed