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 :

récupérer des données par mois


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Points : 38
    Points
    38
    Par défaut récupérer des données par mois
    Bonjour,

    J'essaie de récupérer des données par mois pour pouvoir ensuite les afficher de la manière suivante:
    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
     
    <h2>titre mois année</h2>
    <table>
    <tr><td>colonne1A</td><td>colonne2A</td><td>colonne3A</td></tr>
    <tr><td>colonne1B</td><td>colonne2B</td><td>colonne3B</td></tr>etc.....
    </table>
     
    <h2>titre mois suivant année</h2>
    <table>
    <tr><td>colonne1A</td><td>colonne2A</td><td>colonne3A</td></tr>
    <tr><td>colonne1B</td><td>colonne2B</td><td>colonne3B</td></tr>etc.....
    </table>
     
    ...........
    <h2>titre mois suivant année suivante</h2>
     
    etc..........
    Je n'arrive pas à construire ma requête et mon fetch_array pour récupérer les données dans une variable et les afficher hors de la boucle mysql_fetch_array.

    J'ai une table contenant l'essentiel de mes enregistrements appelée general avec pour champs:
    ID,date(DATE),description(text), montant(float),typemontant(bool),mot-clé(text),commentaires(text)

    J'ai essayé avec MONTH(date) et YEAR(date), mais je n'arrive qu'à récupérer des enregistrements isolément pour un ou quelques mois manuellement, pas pour tous les mois et années de manière automatique ou dans une boucle.

    Comment faut-il s'y prendre?

    Merci pour vos réponses,

    M.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Points : 38
    Points
    38
    Par défaut
    Comme je n'ai toujours pas trouvé de solution, je fais des essais avec des boucles for.
    Et j'ai maintenant un problème de syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    for($i=0;$i<12;$i++){
    $sql.$i ="SELECT description,date,MONTH(date) FROM general ORDER BY date Where MONTH(date)=".$i. "";
    $req.$i=  mysql_query($sql.$i) or die('Erreur SQL !<br>'.$sql.$i.'<br>'.mysql_error());
    while($result.$i = mysql_fetch_array($req.$i)){
     
       echo $result.$i['date'];
       echo $result.$i['description'];}
     
    }
    me renvoie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Erreur SQL !
     
    Erreur de syntaxe près de 'Where MONTH(date)=1' à la ligne 1
    J'ai des problèmes avec les guillemets et les doubles guillemets. Je ne comprend manifestement pas la logique(je débute avec php mysql). J'ai fait des essais simples et double guillemets dans tous les sens. Ça ne fonctionne pas.

    Quelle est la syntaxe correcte?

    Merci pour vos réponses,

    M.

  3. #3
    Membre actif Avatar de Momodedf
    Inscrit en
    Juillet 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Juillet 2007
    Messages : 246
    Points : 221
    Points
    221
    Par défaut
    La clause WHERE doit toujours être placée avant la clause ORDER BY dans une requête SQL.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Points : 38
    Points
    38
    Par défaut
    Bonjour,
    comme je n'arrive pas à trouver la solution à mon problème, je me permets de remonter mon post. Je n'ai peut-être pas été suffisamment clair. Ce que je voudrais en fait, c'est afficher mes données par mois, chaque mois étant affiché dans un tableau html séparé. Vous pouvez voir une capture d'écran ici à titre d'exemple: capture d'écran
    Chacune des colonnes de cet exemple correspond à un champ de ma table principale.
    Je n'arrive pas à formuler ma requête et/ou à construire la bonne boucle php pour y arriver. J'ai essayé avec MONTH(date), puis GROUP BY MONTH(date), mais je ne parviens pas à afficher et séparer les mois les uns des autres.

    Je suppose que je ne suis pas le seul à faire ce type d'affichage. Il doit y avoir un moyen simple d'y parvenir, Mais je bute sur ce problème.

    Merci pour vos réponses,


    Michel.

Discussions similaires

  1. retracer des données par mois
    Par Dendrite dans le forum Requêtes
    Réponses: 2
    Dernier message: 19/12/2011, 13h26
  2. Récupérer des données par le protocole j-bus
    Par paulo972 dans le forum LabVIEW
    Réponses: 0
    Dernier message: 25/01/2011, 14h37
  3. Récupérer des données par HQL
    Par elchgarahmed dans le forum Hibernate
    Réponses: 1
    Dernier message: 24/05/2010, 16h43
  4. Réponses: 6
    Dernier message: 18/03/2009, 17h25
  5. Récupérer des données par LDAP
    Par wil4linux dans le forum ASP
    Réponses: 3
    Dernier message: 14/09/2005, 12h11

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