Difficulté avec date() de PHP

Résolu/Fermé
adaro2000 Messages postés 46 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 28 octobre 2008 - 28 oct. 2008 à 14:14
adaro2000 Messages postés 46 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 28 octobre 2008 - 28 oct. 2008 à 16:15
Bonjour,

Je n'arrive pas à comprendre pourquoi date() du 26-10-2008 déconne sérieusement.

Voici mon code :

<?php

$fin=time();
$deb=$fin-(25*24*60*60);

$fin='2008-10-23';
$deb='2008-10-27';

list($y_fin,$m_fin,$d_fin)=explode('-',$fin);
list($y_deb,$m_deb,$d_deb)=explode('-',$deb);

$t_deb=mktime(0,0,0,$m_deb,$d_deb,$y_deb);
$t_fin=mktime(0,0,0,$m_fin,$d_fin,$y_fin);

$r_fin=$t_fin+(60*60*24);

while($r_fin>$t_deb) {
$day=$t_deb+(60*60*24)-1;
echo 'Debut :'.date('Y-m-d H:i:s',$t_deb).'          Fin :'.date('Y-m-d H:i:s',$day);
echo '<br/>Debut :'.$t_deb.'                       Fin :'.$day;

$t_deb=$day+1;
echo "<hr/>";
}

?>

Pouvez-vous m'aider ? Merci d'avance.
A voir également:

5 réponses

kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
28 oct. 2008 à 14:19
Je n'arrive pas à comprendre pourquoi date() du 26-10-2008 déconne sérieusement.

Mais encore?
1
chico200987
28 oct. 2008 à 14:32
Ce n'est pas le terme employe qu'il te reproche, mais ton erreur n'est pas du tout explicite, dit ce qu'il ne fonctionne pas, ce que tu aimerais faire et et que tu obtiens... Ca sera peut-etre plus facile de t'aider par la suite....
1
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
28 oct. 2008 à 14:33
Parfaitement!
0
adaro2000 Messages postés 46 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 28 octobre 2008 2
28 oct. 2008 à 14:29
Vous m'excusez le terme. Je suis dépassé par cela. Il y 2 jours presque que j'y travaille !
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
28 oct. 2008 à 14:32
Oh c'est pas le terme qui dérange. On peut déconner, ya pas de soucis :-)
Non c'est juste que tu ne nous dit pas où quel est le problème.
Un message d'erreur? Un calcul bizzare..?
0
adaro2000 Messages postés 46 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 28 octobre 2008 2
28 oct. 2008 à 15:20
Ok.

Dans le code, j'incrémente le timestamp par (60*60*24)-1 secondes afin de lancer une requête avec le date('Y-m-d H:i:s') obtenu. Tout marche bien avec les dates antérieures, mais avec le 26-10-2008, le date('Y-m-d H:i:s') renvoyé, au lieu que ce soit 2008-10-26 23:59:59, il me retourne 2008-10-26 22:59:59 ; les résultats ne sont donc plus bons.

Je ne sais pas si c'est du à un mauvais usage de date ou ...

Pouvez-vous m'aider ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
adaro2000 Messages postés 46 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 28 octobre 2008 2
28 oct. 2008 à 16:15
J'ai trouvé.
Il me fallait utilisé la fonction date_default_timezone_set() pour tout gérer automatiquement.
Merci pour vos contributions.
0