Afficher résultat selon date (en mois)

Eléphant du PHP | 72 Messages

23 févr. 2006, 10:03

Salut Ryle ! :lol:

Hé bien j'ai essayé comme tu m'as expliqué, mais j'ai ce message d'erreur :
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\regiontoujours\essaievenementresultat.php on line 9
la requête :
$query_Recordset2 = "SELECT evenement, descriptif, ville, datedebut, datefin FROM tb_evenements WHERE MONTH(datedebut)>=$_POST['num_mois'] AND MONTH(datefin)<=$_POST['num_mois']";
et j'ai bien déclaré mes variables avant comme ça :
$num_mois=$_POST['num_mois'];
$evenement=$_POST['evenement'];
$departement2=$_POST['departement2'];
y a un début à tout !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 févr. 2006, 10:32

C'est qu'il doit y avoir une erreur dans ton code sur (ou pas loin) de la ligne 9. Peux tu indiquer le début de ton code (genre les 15 premières lignes) que l'on puisse voir ce qui va pas ? :)

Sinon, dès le moment où tu as déclaré ta variable $num_mois=$_POST['num_mois']; tu peux utiliser $num_mois dans ta requête, ça permet de la rendre plus lisible (ça évite de la surcharger de crochets, apostrophes, ... :)
WHERE MONTH(datedebut) >= $num_mois AND MONTH(datefin)<= $num_mois

Eléphant du PHP | 72 Messages

23 févr. 2006, 10:46

Merci Ryle, c'était bien ma requête qui ne collait pas (j'ai donc enlevé le surplus), ça marche à peu près, je dois régler encore quelques trucs et je te redis ça ! (comme transformer la date...).

Encore merci pour toute cette aide ! =D>
y a un début à tout !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 févr. 2006, 10:55

Pas de quoi :)

et puis pour la transformation de tes dates, j'ai vu qu'il y avait un topic sur les dates dans la FAQ : http://www.phpfrance.com/forums/voir_sujet-8323.php

Il t'explique comment les transformer en php ou directement dans ta requête... il y a également pas mal d'infos sur leur manipulation (ajouter des jours, calculer un écart, ...) bref, tu pourras y faire ton marché ;)

Eléphant du PHP | 72 Messages

23 févr. 2006, 12:59

Encore un pb, les résultats s'affichent bien quand c'est une date sur une seule journée, mais sur plusieurs mois ça n'affiche rien ! Du coup je comprends pas !
C'était trop beau ! :roll:
y a un début à tout !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

23 févr. 2006, 13:21

Arf, bah déjà ça te rammène quelque chose, c'est que tu es sur la bonne voie ;)

Ce serait pas une inversion sur les <= et >= dans ta comparaison de date ? (genre celle que j'ai fait dans le mon exemple ... tiens y a pas de smileys mal à l'aise qui regarde en l'air en sifflotant..)

Il doit te rammener les enregistrement dont la date de début est inférieure ou égale au mois sélectionné (datedebut <= $num_mois) et dont la date de fin est supérieure ou égale à celui-ci (datefin >= $num_mois). Cela rammènera toutes les périodes contenant le mois désiré :)

Eléphant du PHP | 72 Messages

23 févr. 2006, 13:30

Bah t'es trop fort (mais j'y avais un peu songé tout d'même ! mais pas trop le réflexe de corriger les autres vu mon niveau ! :roll: )

Encore merci :lol:
Reste plus que je règle le pb des dates et selon l'évolution je te tiens au courant (avec tout ce que tu m'as refilé j'espère m'en sortir !)
y a un début à tout !

Eléphant du PHP | 72 Messages

02 mars 2006, 13:40

Salut !

Oui j'avais oublié pour le résolu. :roll:
Pour transformer les dates j'ai pris cette solution (avec de l'aide bien sûr ! merci encore Lousky !) :
$row_Recordset2['datedebut']= preg_replace('/^(.{4})-(.{2})-(.{2})$/','$3.$2.$1',  $row_Recordset2['datedebut']);
$row_Recordset2['datefin']= preg_replace('/^(.{4})-(.{2})-(.{2})$/','$3.$2.$1',  $row_Recordset2['datefin']);
Encore merci pour toute cette aide ! :D
y a un début à tout !

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

02 mars 2006, 14:50

C'est pas mal en effet pour changer le format de la date. Moi qui m'embêtait avec des substring pour couper la chaine aux bons endroits, je vais peut être opter pour celle là également :)

Oumetou
Invité n'ayant pas de compte PHPfrance

21 mars 2006, 17:09

SA MARCHE MAINTENANT?

Eléphant du PHP | 72 Messages

21 mars 2006, 17:41

Bonjour !

Oumetou c'est écrit résolu, donc logiquement c'est que ça doit marcher ! :wink:
y a un début à tout !

Fafa
Invité n'ayant pas de compte PHPfrance

26 juin 2012, 09:24

Bonjour,

Dans mon site internet, j'aimerais que suivant la date, il y ait marqué un évenement précis. Je m'explique : exemples : le 17 juin, c'est la fête des pères. Offrez un ... ; Le 10 juin, c'est la fête des mères. Offrez un ..... ; Le .....
Et lorsqu'il n'y a pas d'évenement à venir, j'aimerais qu'il soit marqué, "Pour votre anniversaire, ....."

Si vous voulez voir sur mon site ce que je veux dire, allez sur provencemassage.fr.

Merci de votre aide.