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 SQL Discussion :

Intercaler des "titres" dans une liste ?


Sujet :

Langage SQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Intercaler des "titres" dans une liste ?
    Bonjour,

    Toujours dans le cadre de la création de mon site internet, je cherche des solutions... Que je ne trouve pas seul !

    Pour ceux qui n'ont pas lu mes autres post, voici un résumé :

    J'ai plusieurs TABLES :
    FAMILLE
    TARIF
    ARTICLES
    USER

    L'objectif étant d'afficher les ARTICLES selon une MARGE adaptée au LOGIN entré par l'utilisateur, j'ai fait (avec l'aide des gens de ce forum!) la requête suivante en PHP :

    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
     
     
    $sql = "
    SELECT a.Designation, a.IdReference, round(PrixAchat/Marge,2) AS Prix2
    FROM articles a INNER JOIN Tarif t ON t.IdFamille = a.IdFamille
                    INNER JOIN clients c  ON c.NiveauTarif = t.NiveauTarif
    WHERE Login ='$login'";
     
     
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
     
     
    while($data = mysql_fetch_assoc($req))
        {
        echo '<b>'.$data['IdReference'].'</b>'.$data['Designation'].' PRIX : '.$data['Prix2'].'&euro;<br>';
        }

    Ce qui fait que j'obtient ça :
    CARTEMERE CM-K7S41 ASROCK K7S41 SOCK A PRIX : 30.00€
    CARTEMERE CM-P4COMBO-Z ASROCK P4COMBO SOCK 775/478 FSB800 PRIX : 45.56€
    CLEFUSB CLEF-1024-2.0 Clef USB 1Go USB 2.0 PRIX : 38.04€
    CLEFUSB CLEF-512-2.0 Clef USB 512 Mo USB 2.0 PRIX : 20.65€
    DISQUE DD120LO Disque Dur MAXTOR 120Go 7200TM (Gar. construteur) PRIX : 54.35€
    DISQUE DD120MO Disque Dur MAXTOR 120Go 7200TM SATA (Gar. construteur) PRIX : 56.52€
    DISQUE DD120PO Disque Dur MAXTOR 120Go 7200TM 8Mo (Gar. construteur) PRIX : 54.35€
    DISQUE DD160MO Disque Dur MAXTOR 160Go 7200TM SATA (Gar. construteur) PRIX : 61.96€
    DISQUE DD160PO Disque Dur MAXTOR 160Go 7200TM 8Mo (Gar. construteur) PRIX : 57.61€

    etc...
    Et voici ma question :
    Comment faire pour que la famille ne se répète pas à chaque fois, devant chaque article, mais s'insère dans la liste en tête de chaque nouvelle famille (donc QU'UNE SEULE fois), de façon à obtenir ça :
    CARTEMERE
    CM-K7S41 ASROCK K7S41 SOCK A PRIX : 30.00€
    CM-P4COMBO-Z ASROCK P4COMBO SOCK 775/478 FSB800 PRIX : 45.56€
    CLEFUSB
    CLEF-1024-2.0 Clef USB 1Go USB 2.0 PRIX : 38.04€
    CLEF-512-2.0 Clef USB 512 Mo USB 2.0 PRIX : 20.65€
    DISQUE
    DD120LO Disque Dur MAXTOR 120Go 7200TM (Gar. construteur) PRIX : 54.35€
    DD120MO Disque Dur MAXTOR 120Go 7200TM SATA (Gar. construteur) PRIX : 56.52€
    DD120PO Disque Dur MAXTOR 120Go 7200TM 8Mo (Gar. construteur) PRIX : 54.35€
    DD160MO Disque Dur MAXTOR 160Go 7200TM SATA (Gar. construteur) PRIX : 61.96€
    DD160PO Disque Dur MAXTOR 160Go 7200TM 8Mo (Gar. construteur) PRIX : 57.61€

    Etc...
    J'espère que vous comprendrez ce que je souhaite faire, et merci d'avance à ceux qui pourront m'aider.

  2. #2
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Salut,

    Content que ton projet avance bien grâce au bon fonctionnement de ce forum

    Par contre, ce que tu demandes là n'est qu'une question de mise en page de tes données, je pense que ça n'a rien à voir avec du SQL. Ta requête semble être la bonne, à toi de gérer les ruptures en PHP.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  3. #3
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 222
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 222
    Points : 19 551
    Points
    19 551
    Billets dans le blog
    25
    Par défaut
    1+ pour Xo.

    Si vous voulez le faire en SQL, ça demande l'utilisation de curseurs bien peu performatns.... et tout ce qui a trait à la mise en page doit se faire du côté client.
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Changement de forum
    Ah...... Cela voudrait donc dire qu'il faut que je poste mon message dans un autre forum...

    Bon.... J'y go alors.

    Merci de vos réponses!

Discussions similaires

  1. [AJAX] renseigner des input selon choix dans une liste deroulante
    Par abconcept dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/02/2009, 15h06
  2. Réponses: 9
    Dernier message: 24/06/2008, 09h45
  3. Réponses: 1
    Dernier message: 26/06/2006, 17h29

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