Bonjour ,

Je veux faire un tri de données ( d'une BDD ) que j'ai mis sous forme de tableau html , et cela en utilisant un menu déroulant voila mon code :
il ya une requête qui se répète ! .

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
<?php
include('connection.php');

session_start();

$id_projet = $_GET['id'];
$user =$_SESSION['username'] ;
$IDROLE=$_GET['r'];
// la vérification se fait a chaque fois ! pour le role 
require ('verif.php');
if ($_SESSION['username']&& $IDROLE==2)
{
echo " Bienvenue,".$nom."!<br><a href='logout.php'>Logout</a><br><a href='changerpwd.php'>changer de mot de passe</a>";
echo"<br/><a href='update.php?id=$user'>Mon compte</a>";
}
   else
    {  die("Vous devez vous connecter !"); } 
echo"<br><a href='creeTache.php?id=$id_projet'>Créer des taches </a>";      
$user = $_SESSION['username'] ;   

/* Requete d'affichage des projets d'un administrateur donné ! */ 
$sqlA="SELECT distinct PROJET.* 
FROM PROJET, UTILISATEUR, INTERVIENT 
WHERE UTILISATEUR.ID_UTILISATEUR = INTERVIENT.ID_UTILISATEUR
AND INTERVIENT.ID_PROJET = PROJET.ID_PROJET
AND UTILISATEUR.IDENTIFIANT = '$user'
AND PROJET.ID_PROJET = '$id_projet'";    

$result = mysql_query ($sqlA);
$champs = mysql_num_fields($result);
$enregistrements = mysql_num_rows($result);
echo "<p>Nombre de projets : $enregistrements</p>";

echo "<form action ='admin.php?id=$id_projet' method ='POST' ><table id='mytable' cellspacing='0'>"; // Début du tableau
echo "<tr>"; // On crée une ligne
for ($i = 0;$i < $champs;$i++)
 {
$nomChamp = mysql_field_name($result, $i);
echo "<th>$nomChamp</th>";
 }

echo "<th></th>";
echo "<th></th>";echo "<th></th>";echo "<th></th>";
echo "</tr>\n"; // On ferme la ligne
// parcours 

while ($row = mysql_fetch_assoc($result))
 {

echo "<tr>"; // On crée une ligne
foreach ($row as $key => $value) 
{
echo "<td > $value&nbsp;</td>"; 

}
 

echo '<td><a href="supp.php?id='.$row['ID_PROJET'].'" onclick="Supp(this.href); return(false);" title="Supprimer"><img src="images/b_drop.png"></a></td>';
echo '<td><a href="updateProjet.php?id='.$row['ID_PROJET'].'" title="Modifier"><img src="images/b_edit.png"></a><br></td>';
echo '<td><a href="afficheProjet.php?id='.$row['ID_PROJET'].'" target=_blank title="Visualiser"><img src="images/eye.png"></a><br></td>';
echo '<td><input type="submit" name="afficher" value="afficher les taches"></td>';

// le probleme est a ce Niveau , lorsque je sélectionne le champs a trier , je n'arrive pas à afficher le resultat sur le tableau . 

echo"<td><select name='trie'>
               <option name ='tri' value=''>trier les taches par : </option>
               " ;
               $i =0 ;
               while ($i<= $champs )
               	{
               		$sqlT =mysql_query("SELECT TACHE.ID_TACHE, TACHE.INTITULE_TACHE,TACHE.DATE_DEB_PRE,TACHE.DATE_FIN_PRE,TACHE.PRIORITE,TACHE.DUREE,TACHE.RETARD,
UTILISATEUR.NOM as Equipe
FROM TACHE, UTILISATEUR, A_EFFECTUE
WHERE UTILISATEUR.ID_UTILISATEUR = A_EFFECTUE.ID_UTILISATEUR
AND A_EFFECTUE.ID_TACHE = TACHE.ID_TACHE
AND TACHE.ID_PROJET =$id_projet");
               		$nomChamp = mysql_field_name($sqlT, $i);
    				echo"<option value=$nomChamp >$nomChamp</option>";
    				
    				$i++;
    			
    				}
    		echo"
				</select></td>";
			
}
	
echo "</tr>\n"; // On ferme la ligne


echo "</table><p>"; // On ferme le tableau

if ($_POST['afficher'])
 {
 	echo $nomChamp;
 	// Requete d'affichage de tache d'un projet avec le responsable de la tache .
$sqlT =mysql_query("SELECT TACHE.ID_TACHE, TACHE.INTITULE_TACHE,TACHE.DATE_DEB_PRE,TACHE.DATE_FIN_PRE,TACHE.PRIORITE,TACHE.DUREE,TACHE.RETARD,
UTILISATEUR.NOM as Equipe
FROM TACHE, UTILISATEUR, A_EFFECTUE
WHERE UTILISATEUR.ID_UTILISATEUR = A_EFFECTUE.ID_UTILISATEUR
AND A_EFFECTUE.ID_TACHE = TACHE.ID_TACHE
AND TACHE.ID_PROJET =$id_projet
order by $nomChamp");
$champ = mysql_num_fields($sqlT);
		$nbrT= mysql_num_rows($sqlT);
		if ($nbrT!=0)
		{
 	echo "<form action ='admin.php?id=$id_projet' method ='POST' ><table id='mytable' cellspacing='0'>";
 	echo "<tr>"; // On crée une ligne
		for ($i = 0;$i < $champ;$i++)
 		{
		$nomChamps = mysql_field_name($sqlT, $i);
		echo "<th>$nomChamps</th>";
		
		 }
echo "<th></th>";
echo "<th></th>";
echo "<th></th>";

	echo "</tr>\n"; 

		
			while ($rw = mysql_fetch_assoc($sqlT)) 
				{

				foreach ($rw as $key => $value) 
{

echo "<td title='$value'> $value&nbsp; </td>"; 

}
	          $IDTACHE =$rw['ID_TACHE'] ; 
				echo '<td><a href="supp.php?id='.$rw['ID_TACHE'].'" onclick="Supp(this.href); return(false);" title="Supprimer"><img src="images/b_drop.png"></a></td>';
				echo '<td><a href="updateTache.php?id='.$IDTACHE.'&idp='.$id_projet.'" title="Modifier"><img src="images/b_edit.png"></a><br></td>';
				echo '<td><a href="affichetache.php?id='.$rw['INTITULE_TACHE'].'"  title="Créer une Alerte"><img src="images/s_notice.png"></a><br></td></tr>';
				}
echo'</table>';
 	}
 	else 
 	{
 		echo'<td>Aucune tache pour ce projet </td>';
 	}
 }
 header ("Location : admin.php?id=$id_projet");
 	
mysql_close();
Merci ! .