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

PHP & Base de données Discussion :

[SQL] Comment puis-je recolter qu'une fois la valeur d'un champs si elle est multiple


Sujet :

PHP & Base de données

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut [SQL] Comment puis-je recolter qu'une fois la valeur d'un champs si elle est multiple
    Bonjour,

    Dans une formulaire, j'ai un champs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <select name="f_largeurs" id="f_largeurs">
    <option></option>
    </select>
    J'aimerai que mon code consulte ma base de donnée dans le champs cp_largeurs

    Je vais créé une boucle pour qu'il y aie autant de <option></option> que de largeur enregistrer dans ma base de donnée.

    Cependant mon probleme, c'est qu'il y a beaucoup de lrgeur identique. Par exemple

    40mm
    40mm
    50mm
    50mm
    50mm
    60mm
    70mm
    J'aimerais qu'au finale, j'aie seulement

    40mm
    50mm
    60mm
    70mm
    Il me semble avoir deja vu un fonction qui me permet d'afficher qu'une fois la valeur, mais je n'arrive plus m'en souvenir

    Es-ce exact?
    Pouvez vous me renseigner?

    merci
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  2. #2
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Dans le SQL, tu peux spécifier DISTINCT pour ne remonter que les valeurs différentes.

    Mais ma question est pourquoi y a-t-il des largeurs identiques dans la base ?
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    je veux afficher des prix pour des largeur et hauteurs
    je te donne exemple

    10mm x 10mm =1FF
    10mm x 11mm =2FF
    10mm x 12mm =3FF
    10mm x 13mm =4FF
    10mm x 14mm =5FF
    11mm x 10mm =1FF
    11mm x 11mm =2FF
    11mm x 12mm =3FF
    11mm x 13mm =4FF
    11mm x 14mm =5FF
    12mm x 10mm =1FF
    12mm x 11mm =2FF
    12mm x 12mm =3FF
    12mm x 13mm =4FF
    12mm x 14mm =5FF
    Merci pour ta reponse
    Je vais esssayé ca tout de suite
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  4. #4
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Ne serait-il pas plus simple de stocker le format complet en bdd puis éventuellement de le découper en php ?
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Salut FCYPBA,
    Mais que veux tu dire par la??
    J'ai deja etudier ce probleme et je suis finalement rester comme ca. mais ta remarque m'interpelle??
    Pourrais m'éclairsir.

    Le distinct fonctionne mais encore a 100%

    fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'SELECT DISTINCT cp_largeurs FROM tb_'.$type.' ORDER BY cp_largeurs ASC';
    Fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql = 'SELECT DISTINCT cp_largeurs, cp_hauteurs FROM tb_'.$type.' ORDER BY cp_largeurs ASC';
    $sql = 'SELECT DISTINCT * FROM tb_'.$type.' ORDER BY cp_largeurs ASC';
    mais ne serait-ce pas possible d'associer le distinct avec le order by?
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/09/2007, 17h57
  2. [SQL] Comment puis-je donner un 2eme critere de d'ordre (ORDER BY)
    Par pierrot10 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/12/2006, 13h13
  3. Réponses: 13
    Dernier message: 21/12/2005, 12h04
  4. [Sql] Comment lister les tables d'une base ?
    Par Mynautor dans le forum DB2
    Réponses: 6
    Dernier message: 05/09/2005, 13h21
  5. [C#/SQL] Comment gérer les exceptions d'une Procédure stockée ?
    Par thomas_strass dans le forum Accès aux données
    Réponses: 10
    Dernier message: 06/07/2005, 10h40

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