liou13 Posté 10 Septembre 2008 Posté 10 Septembre 2008 Bonjour, j'ai une boucle for qui me ressort des résultats comme cela : 303 312 4512 164 16545 303 4512 312 Et j'aimerai pouvoir regrouper les valeur pour n'avoir 303 qui ne s'affiche que une seule fois. Soit un équivalent du GROUP BY mais en php. Merci
Kioob Posté 10 Septembre 2008 Posté 10 Septembre 2008 (modifié) Hello, La fonction array_unique() peut te faire ça. Sinon dans ta boucle : $list = array();for( [...] ){ $list[ $tonNumero ] = true;}$list = array_keys( $list ); PS : dans ton exemple pour le moment c'est plus proche d'un distinct que d'un group by. Modifié 10 Septembre 2008 par Kioob
liou13 Posté 12 Septembre 2008 Auteur Posté 12 Septembre 2008 Merci pour ton aide, mais le soucis est que j'ai deux un boucle for dans une autre. Voici le code se sera plus simple. $table = array();$table[0] = "15";$table[1] = "12,16,15";$table[2] = "18";$table[3] = "14,12,15,16,18";$table[4] = "14,17";$sql_taf = "SELECT DISTINCT(champs_1), champs_2 FROM p_fonction WHERE"; for ($i=0; $i < count($table); $i++) { if (strpos($champs_1[$i], ",") == false) { if ($i == 0) { $sql_taf .= " champs_1 = "; } else { $sql_taf .= " OR champs_1 = "; } $sql_taf .= $champs_1[$i]; } else { $str = $champs_1[$i]; $attributs = array(); $attributs = explode(',', $str); for ($n=0; $n < count($attributs); $n++) { if (($i == 0) AND ($n == 0)) { $sql_taf .= " champs_1 = "; } else { $sql_taf .= " OR champs_1 = "; } $sql_taf .= $attributs[$n]; } } } $sql_taf .= " ORDER BY champs_2 ASC"; Comme tu t'en doutes si j'ai un très grand tableau je vais avoir une requete énorme. Et cela me permettrai de la réduire. Merci
Kioob Posté 12 Septembre 2008 Posté 12 Septembre 2008 Bonjour, en quoi le fait d'avoir deux tableaux est il un problème ? Et peu importe l'utilisation derrière, la technique de dédoublement est la même. Sur quoi bloques tu ? (non je ne vais pas faire le boulot à ta place)
liou13 Posté 12 Septembre 2008 Auteur Posté 12 Septembre 2008 c'est bon j'ai réussi. Le truc été que comme j'avais deux boucle ça me sortais en valeur unique des variable mais que dans chaque boucle. En fait j'ai créer un autre tableau en sorties de ceux la puis y ai applique le array unique. Merci pour ton coup de main. ++
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant