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 :

Données identiques dans une liste déroulante [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut Données identiques dans une liste déroulante
    Je récupère via la table mysql des données dans mon combo. Tout se passe bien.
    Le problème est que j'ai plusieurs fois la même donnée, ce qui est normal vu qu'elle est plusieurs fois reprise dans la table.
    Comment dois je faire pour qu'elle n'apparaîsse qu'une seule fois ?
    Voici un exemple : j'ai 01-01-01-02-02-02-02-04-04-05
    Je voudrais qu'il apparaisse : 01-02-04-05.
    Et en plus, si c'est possible, je voudrais qu'à la place de 01, il apparaisse janvier, à la place de 02, il apparaisse février ...
    Pourriez-vous me dire comment procéder ?

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    il te suffit de mettre distinct dans requête pour avoir qu'une fois tes champs

    pour les mois tu peux faire un tableau du style

    $mois=array('01'=> 'janvier,'02'=>'fevrier' ,....)

    est dans ton select tu as:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    '<option value="'.$res['mois'].'">$mois[$res['mois']];
    quelque chose dans ce style

  3. #3
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Merci pour ton explication.
    Le problème est que je n'arrive pas à trouver le bon endroit où placer la variable ainsi que l'option.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <form method="post" action="result.php">  
     	<div style="text-align: left"><u>Résultatl</u> : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="Y:/data/images/arrow_right_f2.png" border="0" width="22" height="22" alt="" align="top">
     	&nbsp;&nbsp;Résultat de <?echo "<SELECT Name=Period Size=1><OPTION Value=0>Choisir l'année</OPTION>";
    	$sql= "SELECT DISTINCT Period FROM data_ant  WHERE Period != ''  ORDER BY Period ASC";
    	$rep= mysql_query($sql);
     
    	while($ligne_liste=mysql_fetch_array($rep)){
    	echo "<OPTION Value=\"".$ligne_liste[Period]."\">".$ligne_liste['Period']."</OPTION>";
    	}
    Merci pour ton aide.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    period est bien le mois?

  5. #5
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    oui c'est bien le mois.

    Merci à vous.

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <form method="post" action="result.php">  
     	<div style="text-align: left"><u>Résultatl</u> : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="Y:/data/images/arrow_right_f2.png" border="0" width="22" height="22" alt="" align="top">
     	&nbsp;&nbsp;Résultat de
    	<SELECT Name=Period Size=1><OPTION Value=0>Choisir l'année</OPTION>
    	 <?php
    	 $mois=array('01'=> 'janvier,'02'=>'fevrier' ,....);
    	$sql= "SELECT DISTINCT Period FROM data_ant  WHERE Period != ''  ORDER BY Period ASC";
    	$rep= mysql_query($sql)or die(mysql_error());
     
    	while($ligne_liste=mysql_fetch_array($rep)){
    	echo '<OPTION Value="'.$ligne_liste['Period'].'">'.$mois[$ligne_liste['Period']].'</OPTION>';
    	}
     ?>

  7. #7
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Merci à toi. J'ai essayé mais cela ne marche pas.
    Je te reproduit le code complet :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    <form method="post" action="result.php">  
     	<div style="text-align: left"><u>Rйsultat global</u> : &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="Y:/data/images/arrow_right_f2.png" border="0" width="22" height="22" alt="" align="top">
     	&nbsp;&nbsp;Rйsultat pour la pйriode de <?echo "<SELECT Name=PERIOD Size=1><OPTION Value=0>Choisir l'annйe</OPTION>";
    	$sql= "SELECT DISTINCT PERIOD FROM data_ant  WHERE PERIOD != ''  ORDER BY PERIOD ASC";
    	$rep= mysql_query($sql);
     
    	while($ligne_liste=mysql_fetch_array($rep)){
    	echo "<OPTION Value=\"".$ligne_liste['PERIOD']."\">".$ligne_liste['PERIOD']."</OPTION>";
    	}
    echo "</SELECT>";?>&nbsp;&nbsp; de &nbsp;&nbsp; <?echo "<SELECT Name=PERIOD Size=1><OPTION Value=0>Date dйbut</OPTION>";
    	$sql1= "SELECT DISTINCT PERIOD FROM data_ant  WHERE PERIOD != ''  ORDER BY PERIOD ASC";
    	$rep1= mysql_query($sql1);
     
    	while($ligne_liste=mysql_fetch_array($rep1)){
    	echo "<OPTION Value=\"".$ligne_liste['PERIOD']."\">".$ligne_liste['PERIOD']."</OPTION>";
    	}
    echo "</SELECT>";?>&nbsp;&nbsp; а &nbsp;&nbsp; <?echo "<SELECT Name=PERIOD Size=1><OPTION Value=0>Date Fin</OPTION>";
    	$sql1= "SELECT DISTINCT PERIOD FROM data_ant  WHERE PERIOD != ''  ORDER BY PERIOD ASC";
    	$rep1= mysql_query($sql1);
     
    	while($ligne_liste=mysql_fetch_array($rep1)){
    	echo "<OPTION Value=\"".$ligne_liste['PERIOD']."\">".$ligne_liste['PERIOD']."</OPTION>";
    	}
    echo "</SELECT>";?> &nbsp;&nbsp; <input type="submit" value="Visualiser"></div>
     
    </form>
    Quand je rajoute ton code, ma page est blanche. Je ne comprends pas.
    Pourrais-tu m'aider ?

  8. #8
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 416
    Points : 63
    Points
    63
    Par défaut
    Super sa fonctionne merci à vous

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

Discussions similaires

  1. [MySQL] Chargement de données MySQL dans une liste déroulante
    Par brindherbe86 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 17/03/2008, 18h02
  2. [MySQL] Supprimer la répitition des résultats identiques dans une liste déroulante
    Par ghyosmik dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 13/03/2008, 17h33
  3. Réponses: 3
    Dernier message: 11/10/2007, 12h18
  4. [MySQL] Afficher toutes les données d'un champ dans une liste déroulante
    Par Touareg dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 19/03/2007, 12h42
  5. [MySQL] Enregistrer dans une base de données à partir d'une liste déroulante
    Par snakejl dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 17/05/2006, 16h32

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