begin process at 2012 05 30 20:54:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Divers

 > 

Fonction : date()


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fonction : date()

jeudi 12 janvier 2012 à 09:58:38 | Fonction : date()

sebalex

Membre Club
Bonjour à tous et bonne année.

Voici mon problème :
J'ai la ligne de code suivante :
if((date('m') + 3) > 12) {$MOIS = (date('m') + 3) - 12;}else{$MOIS = date('m') + 3;}

Comme nous sommes en janvier (01), ma recherche devrait me donner avril (04). Les mois dans ma BDD sont indiqués en 01 pour janvier, 02 pour février, etc...

Le résultat de ma chaîne donne par contre "4" au lieu de "04" car bien que date('m') indique le zéro avant le chiffre, le résultat trouvé est "4".

Quelqu'un aurait-il une idée pour ajouter un "0" à mon résultat et ai-je été assez clair ?


D'avance merci et excellente journée à tous.


David
jeudi 12 janvier 2012 à 12:42:38 | Re : Fonction : date()

NHenry

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Bonjour,

date('m') + 3
Il considère que c'est du numérique et retires donc le 0 supplémentaire.

Si tu fais une requête, utilises printf et le format %02d

---------------------------------------------------------------------
  1. Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci
  2. Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
  3. Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés.

---
Mon site
jeudi 12 janvier 2012 à 15:57:00 | Re : Fonction : date()

sebalex

Membre Club
Bonjour et merci de ta réponse. Je te poste ci-après ma requête car très sincèrement, je ne vois pas où insérer le format %02d dont tu parles.

if((date('m') + 3) > 12) {$MOIS_NLPP = (date('m') + 3) - 12;}else{$MOIS_NLPP = date('m') + 3;}

mysql_select_db($database_connexion, $connexion);
$query_echeancesNLPP = "SELECT * FROM CONTRATS WHERE FIN_ANNEE <= '$ANNEE' AND FIN_MOIS = '$MOIS_NLPP' AND ETAT_CONTRAT = 'en vigueur' AND ID_ASSURANCE != 23 ORDER BY ID_COMP, ID_ASSURANCE ASC";
$echeancesNLPP = mysql_query($query_echeancesNLPP, $connexion) or die(mysql_error());
$row_echeancesNLPP = mysql_fetch_assoc($echeancesNLPP);

Comme tu peux le constater, ma requête recherche un nombre ($MOIS_NLPP) sans le zéro initial dans une BDD où les mois sont indiqués avec le zéro initial.

Encore merci de ta précieuse aide.


David
jeudi 12 janvier 2012 à 16:52:40 | Re : Fonction : date()

sebalex

Membre Club
NHenry,

J'ai trouvé grâce à ton intervention. Ce que je ne comprends pas, c'est comment je n'ai pas pensé à ça avant car en fait je l'utilise dans une autre requête avec LIKE '%...%' !!!!!!

Merci encore et bonne fin de journée.


David
vendredi 13 janvier 2012 à 03:10:14 | Re : Fonction : date()

TychoBrahe

Salut,

Pourquoi est-ce que t'embêtes à gérer les cas foireux sur les dates alors que tout a déjà été fait avec DateTime ?

Code PHP :
<?php

$dt = new DateTime();
$dt->add(new DateInterval('P3M'));
echo $dt->format('m');

?>

Dans cet exemple je créé une date qui, par défaut, est la date courante. J'ajoute ensuite une période de 3 mois. J'ai juste à récupérer la date au format que je veux, ici juste le mois mais on peux mettre ce qu'on veux.
vendredi 13 janvier 2012 à 07:46:10 | Re : Fonction : date()

sebalex

Membre Club
Car le résultat ne doit pas être affiché. Il sert à rechercher des valeurs dans ma BDD par une réquête!

Maintenant si tu as un truc moins "foireux", je suis preneur


David
vendredi 13 janvier 2012 à 16:12:32 | Re : Fonction : date()

TychoBrahe

Ce n'est pas parce que j'ai mis un echo que tu es obligé d'en mettre un. La chaîne de caractère retournée par la méthode format est une chaîne comme une autre, tu peux très bien l'utiliser dans ta requête. La seule chose foireuse ici est ton raisonnement.


Cette discussion est classée dans : fonction, date, résultat, mois, janvier


Répondre à ce message

Sujets en rapport avec ce message

Récupérer le résultat d'une fonction [ par BSide ] Bonjour,dans un formulaire les utilisateurs doivent préciser une date qui est variable. La sélection de cette date se fait via un script qui propose u Ca marchait, ça marche pu :'( [ par Inekman ] Bonjour à tous,J'ai écris une fonction qui renvoie une date avec 2 affichages possible en fonction du paramètre donné à la fonction.La fonction, la vo bug dans fonction simple [ par enibib ] Bonjour, J'ai un petit soucis avec une fonctions que j'ai créé. Cette fonction me permet de traduire une date stocké en BDD en date "lisible" Mon f PHP avec fonction javascript [ par midoxe ] Bonjour, je travail sur un formulaire dynamique qui marche bien..sauf que dans ce formulaire je fais appel à une fonction javascript pour retourner l récupérer des données sur un mois, array des jours occupés [ par 555clR ] Bonsoir ! J'ai deux problèmes auxquels je ne trouve pas de solution : 1/ Le premier se trouve dans ma requête... Je vous dresse le décor: - Une tabl Comment compter sur des date en faisant un cumul depuis janvier ? [ par Christophe1739 ] Bonjour, Je souhaite faire un cumul des mutations mois par mois depuis janvier voici le script : SELECT Departement, MONTHNAME(DateMutation) AS Mois Problème disabled [ par naroco ] bonjour je créé un formulaire de collecte d'heures. je propose au collecteur la date du jour ou une autre date via un bouton radio. s'il s'agit d'une Calendrier [ par faabulous ] Bonsoir ! J'ai, à l'aide d'un livre acheté, essayé de coder un calendrier. J'avais plusieurs erreurs, donc j'ai recopié à la lettre le code du livre Calendrier et lien [ par bernhardjo ] Salut, J'ai réaliser un petit calendrier pour mon site, j'ai cependant un petit problème. Je ne vois pas comment faire pour avancer d'un mois ou recul libelle du jour a partir d'une date donnée [ par Medgueye ] Bonjour à tousje voudrai savoir s'il y a une fonction en php qui me permet de connaitre le libellé du jour si je connais la date.Exemple:    - si je p


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,243 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales