IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Afficher une seule fois le résultat d'une colonne


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut Afficher une seule fois le résultat d'une colonne
    Salut à tous,
    j'ai juste un petit problème pour faire afficher une colonne de façon unique
    j'explique:
    Une table news
    ID | TITRE | TEXTE | AUTEUR
    1 | titre1 | texte1 | bob
    2 | titre2 | texte2 | momo
    3 | titre3 | texte3 | bob
    4 | titre4 | texte4 | bob
    5 | titre5 | texte5 | luc

    Requête et affichage des news

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $sql="SELECT * FROM news ORDER BY auteur ASC ";
    $req = mysql_query($sql) or die(mysql_error());
    	while($d = mysql_fetch_assoc($req))
    	{
    	$titre=$d['titre'];
    	$texte=$d['texte'];
    	$auteur=$d['auteur'];
     
    	echo $auteur.'<br />'.$titre.'<br />'.$texte.'<br />';
    }
    cela m'affiche bien toutes les news les une après les autres.
    je voudrais pouvoir afficher
    le nom de l'auteur 1 seule fois et en dessous les news correspondante du style :
    Auteur : bob
    titre : titre1
    texte : texte1
    titre : titre3
    texte : texte3
    titre : titre4
    texte : texte4

    Auteur : momo
    titre : titre2
    texte : texte2

    Auteur : luc
    titre : titre5
    texte : texte5

    comment faire cela ???
    merci de votre aide
    Cdt

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Une méthode simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $sql="SELECT * FROM news ORDER BY auteur ASC ";
    $auteur = '';
    $req = mysql_query($sql) or die(mysql_error());
    	while($d = mysql_fetch_assoc($req))
    	{
             if ($d['auteur'] != $auteur) {
                  echo '<p>' . htmlspecialchars($d['auteur']).'</p>';
                  $auteur = $d['auteur'];
             }
     
    	echo htmlspecialchars($d['titre']).'<br />'.htmlspecialchars($d['texte']).'<br />';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Effectivement ca marche nikel,
    je cherchais un truc plus complexe pour rien.

    Merci beaucoup Sabotage

    Cdt
    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Regrouper sous forme d'une seule chaine les résultats d'une requete
    Par dacid dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 22/09/2009, 09h39
  2. Deux exécutable, une DLL: sera-t-elle chargée une seule fois?
    Par scadieux dans le forum Framework .NET
    Réponses: 8
    Dernier message: 09/04/2009, 11h26
  3. Réponses: 4
    Dernier message: 06/06/2008, 10h56
  4. Réponses: 2
    Dernier message: 02/01/2008, 15h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo