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 :

Afficher les valeurs d'une colonne [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut Afficher les valeurs d'une colonne
    bonjour tous le monde!

    'oilou, je selecte les valeurs d'un champs "attribut" qui correspond a la clef d'un tableau de valeur :

    -le champs contient 3, qui correspond a la valeur de mon tableau
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $statut=array(1=>'en attente', 2=>'accepté', 3=>'annulé');
    comment faire pour que $fetch['attribut'] == annulé et non 3 siouplais?


    merci bien!

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 672
    Par défaut
    $fetch['attribut'] contient 3 donc tu peux faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $statut[$fetch['attribut']];

  3. #3
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $statut[$fetch['attribut']] // vaut 'annulé' si $fetch['attribut'] vaut 3
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    ^^ merci bien les enfants, mais je pensais qu'il etait possible dans la requete sql de renvoyer non pas la valeur du champs mais la valeur correspondant au tableau, because que je peux pas faire ce que vous dites, car je ne dois pas utiliser le tableau mais uniquement le resultat de la requete sans la retoucher.



    serait ce possible siouplais?

  5. #5
    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
    Par défaut
    Mysql ignore ce qu'est un tableau PHP, tu peux par contre utiliser des conditions dans la requete :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $sql =  'SELECT CASE attribut';
    foreach ($statut as $key=>$value) {
         $sql .= ' WHEN ' . $key . ' THEN ' . $value;
    }
    $sql .=  'END
    FROM table';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre éclairé Avatar de kaking
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 753
    Par défaut
    merci bien, mais moi quand je fais ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $statut=array(1=>'en attente', 2=>'accepté', 3=>'annulé');
    	// Requete de liste
    	$strSqlList = "SELECT devis_id, devis_label, devis_nb_dp, devis_nb_cp, devis_nb_exf, devis_nb_wd, devis_nb_ing, budget_ht, budget_ttc, DATE_FORMAT(devis_date,' %m/%Y') as dateformate, type_devis_id, devis_nb_ext, CASE devis_statut ";
    	foreach ($statut as $key=>$value) {
         $strSqlList . ' WHEN ' . $key . ' THEN ' . $value;}
     
    		$strSqlList .=" END FROM men_devis";

    et bien ca me donne cela :

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END FROM men_devis ORDER BY devis_label LIMIT 0,20' at line 1



    dsl, j'ai du rater quelque chose mais je sais pas quoi

  7. #7
    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
    Par défaut
    Il manquait un =
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

Discussions similaires

  1. [XL-2010] Afficher les valeurs d'une colonne non répetées sur une deuxième
    Par zombiestomp dans le forum Excel
    Réponses: 3
    Dernier message: 26/02/2014, 12h05
  2. [AC-2010] Afficher dans un message(Msgbox) les valeurs d'une colonne d'une requete
    Par sebing dans le forum VBA Access
    Réponses: 40
    Dernier message: 11/12/2012, 22h52
  3. [XL-2007] Afficher les valeurs d'une colonne
    Par OfficeStyle dans le forum Excel
    Réponses: 2
    Dernier message: 24/10/2012, 22h31
  4. requete pour compter les valeurs ds une colonne
    Par smariteau dans le forum Requêtes
    Réponses: 2
    Dernier message: 10/02/2006, 17h37
  5. intervertir les valeurs dans une colonne d'une table
    Par hammou dans le forum Débuter
    Réponses: 2
    Dernier message: 26/01/2004, 10h15

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