Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1200 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  php/mysql résultat requête dans une seule variable

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

php/mysql résultat requête dans une seule variable

n°1976195
Adou37
Posté le 23-03-2010 à 10:12:35  profilanswer
 

Bonjour,  
je me permets de poster un message car après des jours de recherches et de tests je n'ai toujours pas résolu ce problème.  
Je souhaiterai récupérer le résultat d'une requête dans une seule variable afin d'utiliser cette variable dans un menu déroulant  
 
<code> :  
DEFINITION DU MENU DEROULANT
<select name="choixEnt" id="choixEnt"  onChange="this.form.submit();">
 
1ERE OPTION
  <option value="choice" selected="selected"> Choix Entites </option>
 
REQUETE PERMETTANT DE SLECTIONNER LES DONNEES UNE PAR UNE (pas de soucis pour cette option)
 
<?php  $req = "SELECT DISTINCT ENTITE FROM ua";  
  $res = mysql_query($req) or die('Erreur SQL !<br />' . $req . '<br />' . mysql_error());  
   
  while ($row= mysql_fetch_array($res)){
  $entit= $row['ENTITE'];
   
 ?>
SECONDE OPTION AVEC LE RESULTAT DE LA REQUETE (pas de probleme)
  <option value="<?php echo $entit;?>" <?php if((isset($_POST['choixEnt']))and($_POST['choixEnt']==$entit)) echo "selected";?>><?php echo $entit;?> </option>
<?php  
  }  
 
LA PROBLEME, JE SOUHAITERAI UNE AUTRE OPTION QUI CENTRALISE TOUTES LES ENTITES RECUPEREES DE LA TABLE EN UNE SEULE VARIABLE AFIN DE POUVOIR SELECTIONNER "TOUTES LES ENTITES"
<option value="<?php echo ???;?>" <?php if((isset($_POST['choixEnt']))and($_POST['choixEnt']==???)) echo "selected";?>>TOUTES LES ENTITES</option>
 
J'espere que c'est compréhensible.
Si c'est le cas j'attends avec impatience vos j'espere futur réponses  
Merci  
 

mood
Publicité
Posté le 23-03-2010 à 10:12:35  profilanswer
 

n°1976310
Adou37
Posté le 23-03-2010 à 14:38:42  profilanswer
 

aucunes remarques ? solution? adresse utile ?  
UP! s'il vous plait

n°1976322
pataluc
Posté le 23-03-2010 à 14:49:37  profilanswer
 

Adou37 a écrit :

aucunes remarques ?

si, plusieurs:
- écrire en minuscule
- utiliser les balises [ code][ /code] http://forum-images.hardware.fr/icones/message/c.gif pour poster du code

  


tu crées une variable vide avant ta boucle, et à chaque itération tu lui concatène la valeur courante par exemple.

 

dans ce genre là:

Code :
  1. $allEntit = "";
  2. while ($row= mysql_fetch_array($res)){
  3.   $entit= $row['ENTITE'];
  4.   $allEntit .= $entit.";";
  5. [...]
  6. }


Message cité 1 fois
Message édité par pataluc le 23-03-2010 à 14:49:56
n°1976345
Adou37
Posté le 23-03-2010 à 15:07:43  profilanswer
 

pataluc a écrit :

si, plusieurs:
- écrire en minuscule
- utiliser les balises [ code][ /code] http://forum-images.hardware.fr/icones/message/c.gif pour poster du code
 
 
 
 
tu crées une variable vide avant ta boucle, et à chaque itération tu lui concatène la valeur courante par exemple.
 
dans ce genre là:

Code :
  1. $allEntit = "";
  2. while ($row= mysql_fetch_array($res)){
  3.   $entit= $row['ENTITE'];
  4.   $allEntit .= $entit.";";
  5. [...]
  6. }




 
 
Bonjour,  
Désolé pour les majuscules et les balises je le referai plus !!  
Merci pour l'idée , j'avais déjà essayé de faire cette méthode mais je ne dois pas bien ecrire mon code car j'ai bien toutes les entites sur une ligne sauf que lorsque je fais le select il ne me retourne rien aucune valeur.  
 

Code :
  1. <select name="choixEnt" id="choixEnt"  onChange="this.form.submit();">
  2.  <option value="choice" selected="selected"> Choix Entites </option>
  3. <?php  $req = "SELECT DISTINCT ENTITE FROM ua";
  4.  $res = mysql_query($req) or die('Erreur SQL !<br />' . $req . '<br />' . mysql_error());
  5. $allEntit = "";
  6. while ($row= mysql_fetch_array($res)){
  7. $entit= $row['ENTITE'];
  8. $allEntit .= $entit.";";
  9. ?>
  10. <option value="<?php echo $entit;?>" <?php if((isset($_POST['choixEnt']))and($_POST['choixEnt']==$entit)) echo "selected";?>><?php echo $entit;?> </option>
  11. <option value="<?php echo $allEntit;?>" <?php if((isset($_POST['choixEnt']))and($_POST['choixEnt']==$allEntit)) echo "selected";?>>var</option>
  12. <?php
  13.   }
  14. ?>


 
Merci  

n°1976383
pataluc
Posté le 23-03-2010 à 16:19:38  profilanswer
 

déja il faut que la ligne du dernier <option> soit après ta boucle.
 
ensuite, ca devrait t'envoyer dans $_POST['choixEnt'] la liste de toutes les entités et t'as plus qu'a les traiter. (mais pour ca il faudra les splitter avant).
 
sinon tu mets une dernière <option> qui contient comme value "*" par exemple et tu vérifie dans le traitement de ton formulaire si c'est "*" épicétou.

n°1976394
Adou37
Posté le 23-03-2010 à 16:35:10  profilanswer
 

pataluc a écrit :

déja il faut que la ligne du dernier <option> soit après ta boucle.
 
ensuite, ca devrait t'envoyer dans $_POST['choixEnt'] la liste de toutes les entités et t'as plus qu'a les traiter. (mais pour ca il faudra les splitter avant).
 
sinon tu mets une dernière <option> qui contient comme value "*" par exemple et tu vérifie dans le traitement de ton formulaire si c'est "*" épicétou.


 
 
déja il faut que la ligne du dernier <option> soit après ta boucle.
-> déjà fait  
 
ensuite, ca devrait t'envoyer dans $_POST['choixEnt'] la liste de toutes les entités
->oui en effet mais apparemment ce n'est pas reconnu  
 
et t'as plus qu'a les traiter
-> comment ?  
 
les splitter  
-> ça fait à peinde 2 mois que je fais du php donc la ................ ???  
 
une dernière <option> qui contient comme value "*" par exemple et tu vérifie dans le traitement de ton formulaire si c'est "*"
-> j'suis paumée LOL  
 
voici le code du menu c'est peut etre à ce niveau que ça bug :  
 

Code :
  1. if((isset($_POST['choixDat']))and(!empty($_POST['choixDat']))){
  2.  $recup=$_POST['choixDat'];
  3. if((isset($_POST['choixEnt']))and(!empty($_POST['choixEnt']))) {
  4.  $ent=$_POST['choixEnt'];
  5. switch ($recup) {
  6. case "choix" :
  7. $requete = "SELECT ua.ENTITE,ua.AdresseIP,notifications.AdresseIP,notifications.SourceMAJ,notifications.DateUA,notifications.ETAT FROM ua,notifications
  8. WHERE ua.AdresseIP=notifications.AdresseIP
  9. AND ua.ENTITE='$ent'
  10. ORDER BY DateUA";
  11. $result = mysql_query($requete) or die("Erreur dans l'extraction des informations case hlauj<br>" );
  12. break;
  13. case "hlauj" :
  14. $requete = "SELECT ua.ENTITE,ua.AdresseIP,notifications.AdresseIP,notifications.SourceMAJ,notifications.DateUA,notifications.ETAT FROM ua,notifications
  15.  WHERE ua.AdresseIP=notifications.AdresseIP
  16.  AND ua.ENTITE='$ent'
  17.  AND DateUA='$today'
  18.  AND ETAT='Hors Ligne'";
  19. $result = mysql_query($requete) or die("Erreur dans l'extraction des informations case hlauj<br>" );
  20. break;
  21. case "uajour" :
  22. $requete = "SELECT ua.ENTITE,ua.AdresseIP,notifications.AdresseIP,notifications.SourceMAJ,notifications.DateUA,notifications.ETAT FROM ua,notifications
  23.  WHERE ua.AdresseIP = notifications.AdresseIP
  24.  AND ua.ENTITE='$ent'
  25.  AND DateUA='$today'";
  26. $result = mysql_query($requete) or die("Erreur dans l'extraction des informations case uajour<br>" );
  27. break;
  28. Et ainsi de suite pour chaque option de choixDat
  29.  }


 
ça fonctionne pour chaque entités distincte mais pas l'ensemble
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  php/mysql résultat requête dans une seule variable

 

Sujets relatifs
[MYSQL] procédure stockée, connection à une autre BDMenu /PHP Lien avec MySQL
requete mysql order by sur 2 tablesParser une chaine de caractere de longueur variable
Requête sql - count "selectif"memoire, variable et erreur de segmentation
Problème select max mysqlSeparateur requete SQL
Nombre variable de boucles imbriquées 
Plus de sujets relatifs à : php/mysql résultat requête dans une seule variable


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR