Page 1 sur 1

problème timestamp

Posté : 11 sept. 2024, 16:45
par nestor94
Bonjour,

Je reviens vers vous avec un soucis de timestamp que je ne parviens pas à résoudre.
J'ai d'abord essayé (au plus simple?):
<?php
$heure = date("H:i:s:");
/* On convertit le moment présent en timestamp */
$hts = mktime(date("H"),date("i"),0,date("s"));
/* On crée un timestamp pour l'heure de la sauvegarde */
$debut = mktime(11, 30, 0, date("H"), date("i"), date("s"));
i($hts === $debut)	
{
header('Location:save_14_serveur.php');
exit;
}
?>
mais il ne se passe rien :o

Re: problème timestamp

Posté : 11 sept. 2024, 21:04
par or 1
l'instruction i existe ?

Re: problème timestamp

Posté : 11 sept. 2024, 22:58
par nestor94
Oui, désolé pour la faute de frappe il faut lire if...
<?php
$heure = date("H:i:s:");
/* On convertit le moment présent en timestamp */
$hts = mktime(date("H"),date("i"),0,date("s"));
/* On crée un timestamp pour l'heure de la sauvegarde */
$debut = mktime(11, 30, 0, date("H"), date("i"), date("s"));
if ($hts === $debut)	
{
header('Location:save_14_serveur.php');
exit;
}
?>

Re: problème timestamp

Posté : 11 sept. 2024, 23:37
par or 1
pour debuger : mettre un else, afficher le contenu de $hts, $debut

Re: problème timestamp

Posté : 12 sept. 2024, 11:06
par nestor94
$heure = date("H:i:s:");
/* On convertit le moment présent en timestamp */
$hts = mktime(date("H"),date("i"),0,date("s"));
/* On crée un timestamp pour l'heure de la sauvegarde */
$debut = mktime(11, 30, 0, date("H"), date("i"), date("s"));
if ($hts === $debut)	
{
header('Location:save_14_serveur.php');
exit;
}

else {
	var_dump($hts);
	var_dump($debut);
}
int(1752311100) int(1567683000)

ce ne sont pas les memes valeurs

Re: problème timestamp

Posté : 12 sept. 2024, 16:26
par or 1
que dit la doc sur chaque paramètre de mktime ?

Re: problème timestamp

Posté : 12 sept. 2024, 22:39
par nestor94
$heure = date("H:i:s:");
/* On convertit le moment présent en timestamp */
$hts = mktime(date("H"),date("i"),0,date("s"));
/* On crée un timestamp pour l'heure de la sauvegarde */
$debut = mktime(11, 30, 0, date("H"), date("i"), date("s"));
$fin = mktime(11, 35, 0, date("H"), date("i"), date("s"));
if (($hts > $debut) && ($hts  < $fin))
{
header('Location:save_14_serveur.php');
exit;
}
Ca me semble un peu mieux

Re: problème timestamp

Posté : 13 sept. 2024, 00:18
par @rthur
Si tu veux le timestamp courant, le plus simple est d'utiliser la fonction time() sans paramètre.
Si tu veux utiliser mktime, vérifie que tu passes les bons paramètres :
https://www.php.net/manual/fr/function.mktime.php