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

[Tableaux] Construire un tableau PHP à partir du résultat d'une requête


Sujet :

Langage PHP

  1. #1
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut [Tableaux] Construire un tableau PHP à partir du résultat d'une requête
    Bonjour, dans le cadre d'un travail pour ma société, je suis amené à devoir remplir un tableau de type array directement à partir d'une requête.

    En gros, j'ai un tableau en "dur" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $liste = array("Ex1","Ex2","Ex3","Ex4","Ex5");
    Je voudrais avoir le même tableau, mais que celui-ci soit directement implémenté via une requête SQL de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "SELECT NOM_SOCIETE FROM PRESCRIPTEURS"; (basique)
    J'ai effectué un certains nombres de recherches mais je n'arrive pas à trouver un exemple simple afin de bien comprendre...

    N'étant pas un expert du PHP, je me tourne vers vous afin de ne pas perdre trop de temps la dessus.

    Un petit exemple simple me montrant comment remplir mon tableau via la requête SQL et comment en afficher les résultats (pour une vérification du contenu (= print_r ?)) seraient les bienvenus.

    Merci d'avance !

    HiRoN
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $mon_tableau = array();
    $r = mysql_query($requete) or die(mysql_error());
    while($resultat = mysql_fetch_assoc($r))
    {
       $mon_tableau[] = $resultat['nom_de_la_colone'];
    }
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  3. #3
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    Merci Gloubi pour ta réponse.

    En fait, je tente de suivre ce tutorial pour une autocomplétion.

    Lien vers le tuto :
    http://dcabasson.developpez.com/arti...ion-pas-a-pas/

    J'ai réussi à aller au bout, mon autocomplétion fonctionne mais seulement avec un tableau array mis en "dur" (comme dans le tuto en fait).

    Mais dès que je veux mettre mon tableau généré via une requête (en reprenant par exemple le code de Gloubi), cela ne marche plus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $requete = " SELECT NOM_SOCIETE FROM PRESCRIPTEURS WHERE ID_RESPONSABLE IS NOT NULL AND ID_ENSEIGNE IN (1,2) ";
    $liste = array();
    $r = mysql_query($requete) or die(mysql_error());
    while($resultat = mysql_fetch_assoc($r))
    {$liste[] = $resultat['NOM_SOCIETE'];}
    Y a t-il une différence significative entre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $liste = array("Ex1","Ex2","Ex3","Ex4","Ex5");
    Et le même tableau généré via une requête comme celle du code ci-dessus ?

    En utilisant un "print_r" pour afficher les résultat de chaque tableau, je ne vois pas de différence...

    Quelqu'un aurait-il une idée sur le pourquoi ça fonctionne avec une tableau en "dur" et pas avec un tableau généré via une requête ?

    Tout le code de l'autocomplétion est fourni via le lien du tuto.
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Non, cela ne fait pas de différence en dehors de la donnée contenue a proprement dit... A ce sujet, je sais pas trop ce que tu fais de cette liste (pas trop le temps de lire en détail tous les proj des gens qui postent), mais si tu as deriere une réutilisation JAVASCRIPT de son contenu, il faut alors bien faire gaffe a tout ce qui est quote et double quote potentiellement contenus dans ton tableau de résultat.

    Ainsi, si t'as du JS derriere, je te propose d'essayer ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {$liste[] = htmlentities($resultat['NOM_SOCIETE']);}
    voir meme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {$liste[] = str_replace("'", '´', htmlentities($resultat['NOM_SOCIETE']));}
    car j'ai un doute sur la capacite du htmlentities a convertir les simple quotes...
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  5. #5
    Membre émérite Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Points : 2 589
    Points
    2 589
    Par défaut
    Ok merci Gloubi, je tenterai dès que j'ai un moment.

    Pour le moment, mon autocomplétion fonctionne avec la liste marqué en dur.
    Plus qu'à gérer l'implémentation du tableau via la requête afin de ne plus avoir à gérer le truc (je me vois pas implémenter le tableau à la main à chaque fois...).
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

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

Discussions similaires

  1. [MySQL] PHP & MySQL > insérer résultat d'une requête dans un tableau
    Par Mousshaker dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 18/07/2014, 17h20
  2. Réponses: 2
    Dernier message: 30/04/2008, 11h39
  3. Réponses: 2
    Dernier message: 21/03/2008, 15h41
  4. Réponses: 8
    Dernier message: 11/08/2006, 09h30
  5. Calcul à partir des résultats d'une requète
    Par Sendo dans le forum Access
    Réponses: 1
    Dernier message: 29/09/2005, 17h46

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