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

Requêtes MySQL Discussion :

obtention d'une ligne blanche après un select distinct


Sujet :

Requêtes MySQL

  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 925
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 925
    Points : 419
    Points
    419
    Par défaut obtention d'une ligne blanche après un select distinct
    Bonjour,

    je fait un select distinct afin d'avoir une liste déroulante de mes marques

    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
     
     
    					<SELECT name="mark" class="font" value="<?php echo $mark; ?>">
    								<OPTION>Tous les produits
    								<?
    		// on se connecte à MySQL 
    		include ('connect.php');
     
    		$sqla = sprintf("SELECT DISTINCT marque FROM lldiffusion_produit ORDER BY marque ASC");
    		// on envoie la requête 
    		$reqa = mysql_query($sqla) or die('Erreur SQL !<br>'.$sqla.'<br>'.mysql_error());
    		while($dataa = mysql_fetch_assoc($reqa))
    		{
    			echo '<OPTION>'.$dataa['marque'];
    		}
    									?>
    		</SELECT>
    ça marche très bien, mias le seul souci que j'ai est que j'obtiens en première ligne une ligne blanche. En effet après le champs "toutes les marques", j'ai une ligne blanche et puis en dessous j'ai bient toute la liste des marques.
    En regardant dans ma base de données je n'ai pas l'impression de voir de champs vide au niveau des marques.; Alors je me demande d'où peut bien venir cette ligne blanche et comment faire pour m'en débarasser...

    Merci d'avance pour vos précieux conseils.

  2. #2
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    et en exécutant les requêtes dans phpmyadmin par exemple, quel est le résultat ?

  3. #3
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 925
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 925
    Points : 419
    Points
    419
    Par défaut
    dans phpmyadmin, je n'ai pas cette ligne blanche...

  4. #4
    Membre éprouvé
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Points : 984
    Points
    984
    Par défaut
    Salut,

    As-tu vérifié le code HTML du <select> qui est généré ? Y a-t-il un <option> vide ?

    Il est possible que ça soit le navigateur qui rajoute une option vide lors de l'affichage, car il n'y a aucune option sélectionnée par défaut.

  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 925
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 925
    Points : 419
    Points
    419
    Par défaut
    j'ai changé mon code de cette amnière afin de préselectionner un champs

    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
    28
    29
    30
    31
     
     
    				<SELECT name="mark" class="font">
    								<?
    			if (empty($mark))
    			{
    				echo '<OPTION value="tous les produits" selected="selected">Tous les produits</option>';
    			}
    			else
    			{
    				echo '<OPTION value="tous les produits">Tous les produits</option>';
    			}
     
    		// on se connecte à MySQL 
    		include ('connect.php');
     
    		$sqla = sprintf("SELECT DISTINCT marque FROM lldiffusion_produit ORDER BY marque ASC");
    		// on envoie la requête 
    		$reqa = mysql_query($sqla) or die('Erreur SQL !<br>'.$sqla.'<br>'.mysql_error());
    		while($dataa = mysql_fetch_assoc($reqa))
    		{
    			if ($mark == $dataa['marque'])
    			{
    				echo '<OPTION value="'.$dataa['marque'].'" selected="selected">'.$dataa['marque'].'</option>';
    			}
    			if ($mark != $dataa['marque'])
    			{
    				echo '<OPTION value="'.$dataa['marque'].'">'.$dataa['marque'].'</option>';
    			}
    		}
    									?>
    je récupère toujours une ligne vide préselectionnée:

    voici le code généré

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <OPTION value="tous les produits" selected="selected">Tous les produits</option><OPTION value="" selected="selected"></option><OPTION value="Ansmann">Ansmann</option> etc...
    on peut voir dans ce code que j'ai deux option préselectionée.
    la premiere "tous les produits" celle que je veux.
    et une seconde tout de suite après
    avec value="" et je ne sais pas comment ce code est généré...

  6. #6
    Membre éprouvé
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Points : 984
    Points
    984
    Par défaut
    Tape dans PhpMyAdmin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT(*) FROM lldiffusion_produit WHERE marque IS NULL OR marque = ''
    Si tu obtiens autre chose que 0, c'est bien que dans ta base, tu as une ou plusieurs marques non renseignées.

  7. #7
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    1 925
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 1 925
    Points : 419
    Points
    419
    Par défaut
    Bravo, effectvement, j'avais bien des lignes vide...

    Un grand merci.

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

Discussions similaires

  1. Insertion d'une ligne blanche entre groupe après le tri
    Par Chris1972 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/11/2010, 20h42
  2. zone de liste,selection d'une ligne d'apres BDD
    Par erox44 dans le forum VBA Access
    Réponses: 2
    Dernier message: 23/05/2008, 13h30
  3. Supprimer une ligne excel apres un test IF
    Par yoyo3d dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 18/09/2006, 17h55
  4. Génération d'une page blanche après la première page
    Par le_tisseur dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 08/09/2006, 17h19
  5. Réponses: 14
    Dernier message: 06/02/2006, 12h31

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