Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/03/2008, 17h09   #1
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 53
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 53
Points : 10
Points : 10
Par défaut [SQL] Comment inserer résultat d'une requète dans plusieurs champ de formulaire

Bonjour à tous, j'ai un petit problème (normal sinon je ne serais pas la ) concernant un traitement sur une requète SQL.

Je m'explique

J'ai une table dans ma base de données sur laquelle j'effectue une requète.
Dans cette table il y a plusieurs champs dont un appelé 'programmation' ce champ contient 4 possibilités M1, M2, A1, A2.


Je fais donc ma requête qui m'affiche tous les résultats
resultat 1 M1
resultat 2 M2
resulat 3 M2
resultat 4 M1
resulat 5 A1
.....

Je voudrais afficher mes resultats dans un formulaire de la facon suivante

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
<form name="monform">
<table>
   <tr><td>Tous les resultat M1</td></tr>
   <tr>
       <td>
           <input type="radio" name="M1" value="resultat 1">
           <input type="radio" name="M1" value="resultat 4">
       </td>
   </tr>
 
  <tr><td>Tous les resultat M2</td></tr>
 <tr>
       <td>
           <input type="radio" name="M2" value="resultat 2">
           <input type="radio" name="M2" value="resultat 3">
       </td>
   </tr>
 
  <tr><td>Tous les resultat A1</td></tr>
 
   ......
 
</table>
</form>

Le problème est que je ne sais pas comment placer ma boucle (while ) de façon a ce que seul mes lignes <input> se génère une fois que la requète trouve le bon résultat sans que le tableau tout entier se duplique.

Pour faire simple
Code :
1
2
3
4
while($resultat=$__resultat->fetch_array()){
 mon traitement <== et c'est la que je bloque. 
 
}
Merci pour votre aide
alas70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/03/2008, 18h00   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 453
Points : 5 453
en groupant les réponses et en les triant ?
Code sql :
1
2
3
SELECT $ FROM TABLE 
GROUP BY programmation
ORDER BY programmation
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
echo '<table>';
$res ='';
$bool = true;
while($resultat=$__resultat->fetch_array()){
   if ($res != $resultat['programmation'])
   {   
        $res = $resultat['programmation'];
        echo '<tr><td>Tous les resultat '.$res.'</td></tr>';
        echo '<tr>';
        $bool = true ;
   }
 
   echo '<td><input type="radio" name="'.$res.'" value="'.$resultat['valeur'].'"></td>';
 
   if ($bool) 
   {
      echo '</tr>';
      $bool =false;
   }
}
echo '</table>';
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2008, 10h10   #3
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 53
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 53
Points : 10
Points : 10
Vraiment merci Celira, c'est exactement ce qu'il me fallait, le seul petit problème est que j'étais obligé d'enlever le GROUP_BY programmation et ORDER BY programmation car sinon je n'avais que le premier enregistrement pour chaque programmation, mais maintenant cela marche très. Vraiment merci.
alas70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h21.


 
 
 
 
Partenaires

Hébergement Web