$maintenant = time();
if (isset($_COOKIE['heure_fin_recolte'])) //ligne 1
{
$temps_avant_rafraichissement = $_COOKIE['heure_fin_recolte'] - $maintenant; //ligne 2
$fin_recolte = $_COOKIE['heure_fin_recolte']; //ligne 3
echo 'le serveur a l\'heure : '.date('H:i:s', $maintenant); //ligne 4
echo '<br />Fin de récolte à '.date('H:i:s', $fin_recolte); //ligne 5
echo '<br />Fin de récolte dans '.date('H:i:s', $temps_avant_rafraichissement); //ligne 6
echo '<br />fin de récolte dans '.$temps_avant_rafraichissement.' secondes'; //ligne 7
$phrase_refresh = $temps_avant_rafraichissement.' url=ouverture_popup.php'; //ligne 8
}
Le cookie contient un timestamp, à l'heure inscrite dans le cookie la page doit se rafraichir (ligne 8), ce qui fonctionne (j'utilise une balise meta en html pour ça).Mon problème c'est que la ligne 7 m'affiche bien le nombre de seconde que je souhaite, par exemple : 130 secondes.
Alors que la ligne 6 m'affiche en même temps 1 heure de plus, soit 01:02:10
La ligne 5 m'affiche bien l'heure de fin correcte aussi et l'heure du serveur a à peu près la même heure que mon pc.
Et une fois le timestamp dans le cookie dépassé, la ligne 7 m'affiche un nombre négatif (normal), alors que la ligne 6 m'affiche toujours 1 heure de plus, soit par exemple "00:59:30" pour la ligne 6 et "-30" pour la ligne 7.
Je ne comprends vraiment pas pourquoi il y a cette différence alors que la variable est la même.
EDIT : ce sera peut-être plus compréhensible avec des copié/collé, voici ce que renvoi le code ci-dessus :
Ou un peu plus tard avec le même cookie :le serveur a l'heure : 23:51:51
Fin de récolte à 23:54:00
Fin de récolte dans 01:02:09
fin de récolte dans 129 secondes
le serveur a l'heure : 23:54:26
Fin de récolte à 23:54:00
Fin de récolte dans 00:59:34
fin de récolte dans -26 secondes