Bonjour,

J'ai une petite appli web de compte à rebours (voir le code plus bas).
Le timer est mis à jour via javascript.

Je souhaiterais que cette page soit dupliquée dans une page live.html pour que n'importe quel utilisateur puisse se connecter et voir le temps restant.

Dans le code ci-dessous, j'utilise j'écris dans mon fichier le flux affiché, mais lorsque je me connecte à live.html, mon compte à rebours reprend du début, ce qui est normal en l'état.

Comment puis-je générer live.html en tenant compte de la mise à jour javascript?

Merci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
 
<?php
 
ob_start();
 
if(isset($_GET['minutes']))
{
    $minutes  = intval($_GET['minutes']);
}
else
{
  $minutes  = 1;
}
 
$heures   = 00;  // les heures < 24
//$minutes  = 1;   // les minutes  < 60
$secondes = 00;  // les secondes  < 60
 
$annee = date("Y");  // par defaut cette année
$mois  = date("m");  // par defaut ce mois
$jour  = date("d");  // par defaut aujourd'hui
 
$secondes = mktime(date("H") + $heures,
                            date("i") + $minutes,
                            date("s") + $secondes,
                            $mois,
                            $jour,
                            $annee
                            ) - time();
?>
 
<html>
<head>
<title>Compte à rebours</title>
<script type="text/javascript">
var temps = <?php echo $secondes;?>;
var timer =setInterval('CompteaRebour()',1000);
var sens_inverse= false;
 
function CompteaRebour(){
 
  if (sens_inverse==false) {
    //code
    temps-- ;
  }
  else
  {
    temps++ ;
  }
 
  j = parseInt(temps) ;
  h = parseInt(temps/3600) ;
  m = parseInt((temps%3600)/60) ;
  s = parseInt((temps%3600)%60) ;
 
  document.getElementById('minutes').innerHTML= //(h<10 ? "0"+h : h) + '  h :  ' +
                                                "<B>"+(m<10 ? "0"+m : m) + ' mn : ' +
 
                                           (s<10 ? "0"+s : s) + ' s ' + "</B>";
 
    document.body.style.backgroundColor="#ADFF2F";
    if(m==0 && s<60 && sens_inverse==false)
    {
        document.body.style.backgroundColor="#DAA520";
    }
    if(m==0 && s<30 && sens_inverse==false)
    {
        document.body.style.backgroundColor="#FF6347";
    }
 
    if (sens_inverse==true) {
        //code
        document.body.style.backgroundColor="#FF6347";
        document.getElementById('minutes').innerHTML = document.getElementById('minutes').innerHTML + "<BR><B>DEPASSEMENT!</B>";
    }
 
   if (m==0 && s==0)
   {
    //code
      sens_inverse = true;
 
   }
 
    generer_formulaire(document.getElementById('minutes').innerHTML);
 
}
function Redirection(url) {
setTimeout("window.location=url", 500)
}
</script>
</head>
 
<body onload="timer">
 
<?php
// la condition est que le nombre de seconde soit etre superieur a 24 heures
if ($secondes <= 3600*24) {
?>
<center>
<div id="minutes" style="font-size: 150px;"></div></span></center>
<?php
 }
?>
<body>
<html>
 
<?php
$monfichier = fopen("live.html", "a+"); 
fwrite($monfichier,ob_get_contents());
// j'écris dans mon fichier tout le flux affiché après la commande ob_start()
fclose($monfichier); 
ob_end_flush(); //je termine le contrôle du flux 
?>