comment faire une boucle sans doublée les données afficher ????

  • Auteur de la discussion Auteur de la discussion sTrex
  • Date de début Date de début
WRInaute discret
Bonjour,
j'ai un probleme en php.
je veux faire une boucle sans doublee les donnee afficher.
exemple :
ma base de donne est
Code:
id nom
1  alex
2  bernard
3  Francisco
4  alex
5  bernard
ma boucle
Code:
	$result1 = $db->sql_query("SELECT id, nom from membres where");
	  while($row1 = $db->sql_fetchrow($result1)) {
	  $nom = stripslashes($row1['nom']);
	  echo "$nom<br>";
	  }
Résultat
alex
bernard
Francisco
alex
bernard

mais je veux que la boucle afficher les nom sans double comme ca:
alex
bernard
Francisco

et merci
 
WRInaute accro
Ce n'est pas en php que cela se gère mais en SQL avec la clause SELECT DISTINCT. mais si ta base de données était bien faite, tu n'aurais même pas de doublons dans ta table membres.
 
WRInaute impliqué
YoyoS a dit:
Ce n'est pas en php que cela se gère mais en SQL avec la clause SELECT DISTINCT. mais si ta base de données était bien faite, tu n'aurais même pas de doublons dans ta table membres.

Ca dépend, un membre peut avoir un nom et un prénom, auquel cas tu as des doublons dans le prénom, maintenant imagine qu'il veux faire la liste exhaustive des prénoms de ses membres, alors sa question est légitime ;)

Mais oui en effet SELECT DISTINCT me parait bien pour répondre a cette problématique.
 
WRInaute accro
Tout à fait Haroeris, mais vu qu'il ne connait pas le DISTINCT, je doute de la bonne structure de sa base de données :)

De rien sTrex !
 
WRInaute accro
YoyoS a dit:
Tout à fait Haroeris, mais vu qu'il ne connait pas le DISTINCT, je doute de la bonne structure de sa base de données :)

De rien sTrex !
Les choses ne sont pas forcément liées ... perso je suis pratiquant assidu du modele entité-association (avec des gardes fou ...) depuis près de 30 ans et donc j'ai la faiblesse de penser que je pond des Bdd parfaitement structurées ... sans pour autant connaitre SELECT DISTINCT puisque je ne connais pas Mysql :mrgreen:
 
WRInaute accro
Select distinct existe sur quasi toutes les bases de données, c'est un des premiers trucs qu'on apprend dès qu'on touche au SQL :P Et apprendre à construire des bases de données sans toucher au SQL, c'est comme apprendre à faire du vélo sur internet :mrgreen:

Tu vas pas me dire qu'en 30ans t'as pas appris à faire un SELECT DISTINCT ? ^^
 
WRInaute accro
YoyoS a dit:
Select distinct existe sur quasi toutes les bases de données, c'est un des premiers trucs qu'on apprend en SQL :P
Tu vas pas me dire qu'en 30ans t'as pas appris à faire un SELECT DISTINCT ? ^^
Appris oui, fait souvent non !

Non because avec la base avec laquelle je bosse il est souvent plus performant de travailer en array processing (un champs complet dans un array et une boucle de dedoublonnage en compilé qui dure des pouieme de micro machin même avec 100.000 lignes :mrgreen: :mrgreen: et qui en client serveur se passe sur le client donc libere d'autant le serveur ... ) et puis puisqu el'on parlait du modele entite assoca, il a aussi pour effet de limiter au max les redondances et donc le besoin de recours a des dedoublonnages ... enfin bref c'est un débat un peu de puriste qui doit depasser notre ami ...
 
Discussions similaires
Haut