Bonjour,
je veux exécuter une requête à l’intérieur d’une boucle pour donner en paramètre where une colonne retournée à chaque itération issue d’une autre requête en dehors de while,
mais je veux concaténer le résultat de la requête c'est-à-dire concaténer les ligne dans une seule pour l’afficher comme string après, donc j’ai envisagé une autre boucle après l’exécution de la requête pour concaténer, elle marche mais le résultat retourné n’est pas bon, car la chaine concaténée contient de la répétition même si j’ai met DISTINCT dans la requête !!
Et voilà le code
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
 
//première requête pour avoir le paramètre à chaque itération
//..............
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
// si on a récupéré un résultat on l'affiche.
if($total) {
    // début du tableau
    echo '<table bgcolor="#183152">'."\n";
        // première ligne on affiche les titres des colonnes
		echo '<tr>';
        //.....................................autres lignes du tableau.....
	 echo '<td bgcolor="#A2B5BF"><center><b><u> En utilisation </u></b></center></td>';
        echo '</tr>'."\n";
    // lecture et affichage des résultats, 1 résultat par ligne.    
    while($row = mysql_fetch_array($result)) {
        echo '<tr>';
		//echo .................autres lignes
        echo '<td bgcolor="#ABC8E2"><center>'.$row['Equipe_projet'].'</center></td>';
 
		echo '</tr>'."\n";
		$req = "SELECT DISTINCT Nom FROM `listes` WHERE `id` = ".$row['id_pc'].""; // un champ de la premùière requête comme paramètre
		$res = mysql_query($req,$link) or die ('Erreur : '.mysql_error() );
		$str = "";
		while($data = mysql_fetch_assoc($res))
		{
			$var .= " ".$data['Nom'].",";
			$var = substr($var,'0','-1');
		//echo $mavariable;
 
		}
		if($row['un_truc']==1)  // un champ de la première requête comme condition
		{
			echo '<td bgcolor="#ABC8E2"><center>'.$var.'</center></td>';
		}
		else echo '<td bgcolor="#ABC8E2"><center>Aucun</center></td>';
 
 
    }
    echo '</table>'."\n";
    // fin du tableau.
}
Donc cela marche,il affiche dans le tableau selon la condition,sauf que la chaine affichée n'est pas correcte genre il affiche :"arnaud thomas arnaud" même si j'ai met DISTINCT
Merci d'avance