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 :

Créer un tableau à partir d'une requete SQL


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut Créer un tableau à partir d'une requete SQL
    Bonjour,

    J'ai une requête SQL et je veux mettre le résultat dans un tableau que je vais parcourir par la suite.

    La requête renvoi plusieurs enregistrements de plusieurs utilisateur.En fait j'ai une table Pointage et j'extrait tout les utilisateurs pointés avec les dates.
    Simpelment je veux avoir comme résultat un utilisateur une seule fois et tous les dates expl:
    c'est ce que j'ai dans le résultat de la requette
    Util1 date1
    Util1 date2
    Util1 date3
    Util2 date1
    Util 2 date3....

    Je veux avoir comme resultat :
    Util1 date1 date2 date3
    Util2 date1 date2 date3..

    Est il possible de la faire j'ai passé un temps fou à créer ce tableau mais j'ai pas arrivé . Pouvez vous m'aider s'il vous plait?Ou y a t-il un autre moyen afin d'avoir un seul utilisateur avec tout les dates pointés?

    Merci d'avance

  2. #2
    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
    La méthode la plus direct est d'utiliser la fonction GROUP_CONCAT() de mysql.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 319
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 319
    Billets dans le blog
    17
    Par défaut
    Tu veux obtenir ce résultat directement avec MySQL ?

    Dans ce cas il faudra tout mettre dans une seule "colonne" avec GROUP_CONCAT( ).

    Vois les exemples sur la doc : http://dev.mysql.com/doc/refman/5.0/...n_group-concat

  4. #4
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut
    Salut ,

    Merci pour votre aide j'ai tester la raquette suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT nom_prenom,Matricule, GROUP_CONCAT( date_import ) 
    FROM import_abs
    GROUP BY nom_prenom
    Elle m'affiche une seule ligne pour chaque utilisateur sauf que la colonne GROUP_CONCAT( date_import ) n'est pas lisible sur PHPMy admin il a la forme :[BLOB - 10 o] et [BLOB - 43 o]??!! je sais pas c'est quoi ce code , est ce que le GROUP_CONCAT peut afficher correctement un groupe de date?

    @Séb est il un autre moyen en php pour crée ce tableau avec une seule ligne pour chaque utilisateur avec tout les dates pointés?

  5. #5
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 319
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 319
    Billets dans le blog
    17
    Par défaut
    je sais pas c'est quoi ce code
    phpMyAdmin considère le contenu de la colonne obtenue avec GROUP_CONCAT( ) comme un binaire, et ne l'affiche pas.

    est ce que le GROUP_CONCAT peut afficher correctement un groupe de date?
    Oui, teste sur une page web.

    est il un autre moyen en php pour crée ce tableau avec une seule ligne pour chaque utilisateur avec tout les dates pointés?
    Oui bien sûr.

  6. #6
    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
    Selon la configuration, phpmyadmin affiche ou non les BLOB.
    Mais bon ton but n'est pas de visualiser le résultat dans phpmyadmin donc je ne vois pas pourquoi tu t'arretes la dessus.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut
    Salut,

    Oui effectivement ça m'affiche les dates correctement sur une page web , j'ai tester par la suite.

    à ce stade c'est bien j'ai une seule ligne par utilisateur et dans la colonne Group_contact que j'ai nommé as "result" tout les dates pointées séparés par des espaces. Maintenant je dois exploiter ce résultat pour comparer les dates pointés avec les dates de la période.

    là je pense à metrre le resultat dans un tableau et le parcourir pour la comparaison....

    Lorsque je rentre ce soir je vais vous fournir mon code si j'aurais des diff , et ça sera gentil de votre part de m'aider à finir ce code

    Merci

  8. #8
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 319
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 319
    Billets dans le blog
    17
    Par défaut
    Tu peux peut-être faire tout ça directement dans une requête.

    Faudrait qu'on ait les tenants et les aboutissants pour te conseiller au mieux.

Discussions similaires

  1. [SQL-Server] Créer fichier CSV à partir d'une requete SQL
    Par slimshady2878 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/12/2013, 19h02
  2. Réponses: 3
    Dernier message: 10/09/2007, 20h31
  3. Réponses: 5
    Dernier message: 27/02/2007, 20h55
  4. Comment faire du MDX à partir d'une requete SQL?
    Par Immobilis dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 10/11/2005, 09h46
  5. Tableau a partir d'une requete sql
    Par 10-nice dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 25/10/2004, 16h37

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