FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Tri sans répétition en php/mysql
 

Tri sans répétition en php/mysql

Il y a 277 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici



Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Tri sans répétition en php/mysql
 
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Salut,

Je rencontre un petit souci (blocage !) pour coder une fonction php. Par ex, imaginons ma base de données, avec un champ "catégorie" me permettant de définir une catégorie d'appartenance aux données stockées dans cette base. Il y aura par ex : 3 données de la catégorie 1, 7 de la catégorie 2 et 12 de la catégorie 3.

Ce que je voudrais, c'est faire un menu déroulant listant mes 3 catégories, mais sans répéter 3 fois la catégorie 1, 7 fois la 2 et 12 dois la 3...

Or mes compétences en php étant limitées, je ne vois pas comment m'en sortir en partant de ce code :

Code :
  1. <?php
  2.     $retour = mysql_query('SELECT categorie FROM lien ORDER BY categorie');
  3.     while ($donnees = mysql_fetch_array($retour))
  4.     {
  5.         echo '<option value="' . $donnees['categorie'] . '">' . $donnees['categorie'] . '</option>';
  6.     }
  7. ?>



Merci de votre aide


---------------
.: La Pipicy Team :love: :.

G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

Dans ta requete SQL "GROUP BY" au lieux de "ORDER BY" ;)


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Bijoux Fantaisie de Créateur !
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Merci Boub, c'est exactement ce que je voulais faire :D

Ce qui me rassure, c'est que je ne connaissais effectivement pas cette fonction ; ce qui me fait peur, c'est d'imaginer tout ce que je ne sais pas encore ;)


---------------
.: La Pipicy Team :love: :.
G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

C'est en forgeant qu'on devient forgeron :D


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Bijoux Fantaisie de Créateur !
zeb
Profil : Modérateur libre

:lol: Dis marsien, tu l'as devant le nez sans le voir depuis combien de temps ?

Sinon, tu souhaites peut-être quand même trier tes données. Tu as deux possiblités, dont celle de boubpopsyteam :

Code :
  1. SELECT categorie FROM lien GROUP BY categorie ORDER BY categorie
  2. SELECT DISTINCT categorie FROM lien ORDER BY categorie


Enjoy!

Edit: Ah bas grilled.


Message édité par zeb le 28-03-2006 à 20:55:30
Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Merci Zeb,

C'est ce que j'avais fait aussi, car effectivement je veux aussi trier mes données.

La 2e solution est également très intéressante, je la garde sous le coude ! :)

PS : j'ai un gros nez qui me masque la vue :o
:D

Message cité 1 fois
Message édité par marsien le 28-03-2006 à 21:00:59

---------------
.: La Pipicy Team :love: :.
Inside my own Second Life

Shino-Genin a écrit :

Merci Boub, c'est exactement ce que je voulais faire :D

Ce qui me rassure, c'est que je ne connaissais effectivement pas cette fonction ; ce qui me fait peur, c'est d'imaginer tout ce que je ne sais pas encore ;)


C'est la question essentielle : il ne faut pas se demander si on peu le faire, mais plutôt comment ;).. C'est vrai que cette exploration peut parfois paraître abyssale au premier abord, mais c'est comme explorer les limites des infinis : ça reste toujours très relatif..

Shino-Genin a écrit :

PS : j'ai un gros nez qui me masque la vue :o
:D


Ah ? Je ne suis pas seul ? :whistle:

:jap:


Message édité par Johan_et_Pirlouit le 28-03-2006 à 22:11:49

---------------
Retrouvez moi sur mon blog : http://www.nicolasullern.net/leblog/
Et aussi sur :
http://www.linkedin.com/in/nicolasullern
http://www.viadeo.com/fr/profile/nicolas.ullern
http://www.copaing.net/johanpirlouit/
Plus d'informations

Salut à vous,

Vos réponses mon beaucoup aidé pour mon projet, mais je bloque à nouveau pourriez vous m'aider?
Je cherche tout comme marsien à trier sans répétition mais je voudrais en plus compter le nombres de répetitions.
Voici le code que j'ai modifier de maniere à compter les répetitions mais il ne compte que la repetition du premier champ.

Le code :

Code :
  1. <?
  2. $SQL = "SELECT code_postal FROM clients GROUP BY code_postal";
  3.     $result = mysql_query($SQL) or die("La requête $SQL a échoué : ".mysql_error());
  4. $rep = mysql_num_rows($result);
  5. while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
  6. {
  7. printf("%s : %s <br>", $row["code_postal"], $rep);
  8. }
  9. ?>


la table mysql :
clients
nom | prenom | code_postal
nom1 | prenom1 | cp1
nom2 | prenom2 | cp1
nom3 | prenom3 | cp2
nom3 | prenom3 | cp3

et ca me donne :

cp1 : 2
cp2 : 2
cp3 : 2


Merci par avance pour votre aide et bonne vacances si c'est votre cas :)


Message édité par mokacola le 06-08-2008 à 13:56:53
zeb
Profil : Modérateur libre

Vu comment tu as dû t'amuser à mettre des couleurs, tu vas être déçu :

 

http://site.voila.fr/zulu-echo-bravo/img/balisecodeppc_ok.png


Message édité par zeb le 09-08-2008 à 02:33:10

---------------
Règlement du forum / Règlement de Programmation / Règlement du Monde de Linux euh, n'y en a pas...
Profil : Pointeur
Plus d'informations

Solution: count + group by


Message édité par KangOl le 08-08-2008 à 23:57:30

---------------
Da Bidz Triad©®™: Bidz Interceptor
.:: Smileyz version 4.2 [050625]::. -- Code source disponible sous licence GPL.
[u

Aller à :
 
  FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Tri sans répétition en php/mysql

Annonces Google
Publicité
Actualités relatives

Mises à jour payante pour MySQL

Publié le 18 July 2006

Alors que la version 5.0 de SGBD vient de sortir MySQL annonce ne plus vouloir proposer des mises à jour gratuites pour les versions antérieures, dès le début du mois d’août, ce qui se comprend puisqu’il lui est préférable de concentrer ses forces sur le Lire la suite

HP vous aide à utiliser MySQL

Publié le 27 April 2006

MySQL vient de se trouver un nouveau partenaire en la personne de HP qui devrait proposer, dès juin, des abonnements MySQL Network et devrait même offrir à ses clients un support technique incluant conseil et solutions pour l’int Lire la suite

MySql aura son forum français

Publié le 06 September 2005

MySQL France vient de lancer un forum spécialement dédié aux développeurs de la communauté Open Source francophone se servant de MySQL. Ce forum, mis en place sur le portail iFRANCE.com, a été d&eacu Lire la suite

MySQL passe en version 4, notre forum suit

Publié le 19 March 2003

MySQL, le célèbre système de base de données, vient tout juste de passer en version 4.0.12 finale, marquant ainsi le pas du 3.x vers le 4.x. Les nouveautés sont très nombreuses mais pour résumer, on peut remarquer : Amélioration du support de l'Inn Lire la suite

Les derniers tests

Que choisir ? Home Cinema 5.1 ou projecteur de son ?

Publié le 25 September 2008

Faut-il craquer pour un ensemble 5.1 ou pour une barre de son ? Découvrez les forces et faiblesses comparées de chaque système. Lire la suite

Intel Core i7 (Nehalem) : une architecture signée AMD ?

Publié le 25 September 2008

Avec ses nouveaux processeurs Core i7, Intel fait évoluer les Core 2 en reprenant leur architecture, mais en lui rajoutant des technologies dont la plupart semblent avoir leur équivalent direct chez AMD. Impression ou réalité ? Lire la suite

Test du Nokia N96 : la vie sans écran tactile

Publié le 24 September 2008

Un téléphone haut de gamme peut il échapper à l'écran tactile ? Nokia a tenté le pari avec le N96. Lire la suite

Les nouveaux disques durs 1 To

Publié le 22 September 2008

Un an et demi après l'introduction du premier disque dur 1 To, les prix ont beaucoup diminué et de nouveaux modèles ont été lancés. Mais comment se comportent-ils entre eux et par rapport aux anciens ? Réponse dans ce comparatif. Lire la suite