Aller au contenu
Les Forums d'Infoclimat

Ce tchat, hébergé sur une plateforme indépendante d'Infoclimat, est géré et modéré par une équipe autonome, sans lien avec l'Association.
Un compte séparé du site et du forum d'Infoclimat est nécessaire pour s'y connecter.

RESOLU date de la veille en php


tudgur
 Partager

Messages recommandés

Bonjour à tous !

Hier, je me suis aperçu que sur mon site, le graphique de la veille ne s'affichait pas entre 0h00 et 2h00, heure locale (donc entre 22h et 24h UTC)
C'est sans doute comme ça depuis que mon site existe...
Mes PC et ma station sont en UTC, donc tous mes graphiques sont générés en UTC.
Voici le code que j'utilise :

<?php include('../variables.php'); ?>
<div class="box_graphiques"><img alt="" src="<?php $graph_hier =  date('../Y/Ymd', strtotime('-1 day')).'.gif';
echo $graph_hier; ?>" /></div>

Nous sommes le 16 à 0h05 heure locale. mais donc 22h05 UTC

Le code ci-dessus crée le fichier de la veille à la date du 15 alors que l'on est toujours le 15 en UTC...

Une solution ?
Merci.

Lien à poster
Partager sur d’autres sites

Posté(e)
Ticheville-alt: 216 m (61-Orne-Normandie)

bonsoir,

essais ce code:

<?php include('../variables.php'); ?>
	<div class="box_graphiques"><img alt="" src="<?php $graph_hier= date('../Y/Ymd').;
			$clone = clone $graph_hier;      
			$clone->modify( '-1 day' );   
			echo  $clone'.gif';?>"/>
	</div>

 

Modifié par ben6114
orthographe
Lien à poster
Partager sur d’autres sites

Bonjour.

Merci beaucoup pour ton aide, mais ça ne marche pas !
Parse error: syntax error, unexpected ';' in /web4/meteoplouguerne/www/graphiques/pages_graphiques/hier.php on line 1

Lien à poster
Partager sur d’autres sites

  • Responsable Technique

J'ai pas bien compris dans quel sens et le problème, mais tout dépend du fuseau horaire de ton serveur.

Tu peux essayer au début du script d'ajouter :

<?php
date_default_timezone_set('UTC');

Si cela pose problème dans d'autres parties de la page, tu peux remettre Europe/Paris au lieu de UTC après le bout de code qui affiche l'image.

Lien à poster
Partager sur d’autres sites

Bonsoir,

Merci beaucoup pour votre aide.
C'est bon , pour l'instant , avec le code suivant  :

<?php include('../variables.php'); ?> <div class="box_graphiques"><img alt="" src="<?php date_default_timezone_set('UTC'); 

$graph_hier =  date('../Y/Ymd', strtotime('-1 day')).'.gif'; 

echo $graph_hier; ?>" /></div>

Reste à vérifier si c'est toujours bon entre minuit et deux heures du matin.

Ceci dit, le graphique d'hier qui ne s'affiche pas pendant deux heures en pleine nuit, ce n'est pas un gros problème !!!
D'autant plus qu'il n'y aura sans doute plus de changement d'heure dans un avenir assez proche.

 

 

Modifié par tudgur
Lien à poster
Partager sur d’autres sites

Posté(e)
La-Chapelle-Saint-Florent - 49 (proche 44, bord Loire)

Fred a raison, préférable de déclarer le fuseau avant d'utiliser la fonction date(). Probablement ça ton problème.

 

Sinon j'ai lu que strtotime était pas terrible pour calculer avec les heures d'été-hiver. Tu peux utiliser mktime à la place de strtotime aussi.

 

mktime(0, 0, 0, date("m")  , date("d")-1, date("Y"));

 

Lien à poster
Partager sur d’autres sites

J'ai effectivement la ligne suivante dans mon fichier variables.php :

$date_veille_2 = strftime("%Y%m%d", mktime(0, 0, 0, date('Y'), date('m'), date('d')-1));

Mais je n'ai pas essayé de l'utiliser.
J'attends minuit heure locale pour vérifier la proposition de Fred59.

 

Info : à 00h15, ça fonctionne !!!
Donc, à priori, c'est bon.

Merci à vous.

Modifié par tudgur
imformation
Lien à poster
Partager sur d’autres sites

  • tudgur changed the title to RESOLU date de la veille en php

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Partager

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...