Bonsoir à tous,
Cette page permet de calculer le nombre de seconde entre 2 dates et de lancer un décompteur. Mon probleme est losque que le compteur arrive a zero, comment arrété le compteur et afficher un bouton à la place du décompte.
merci pour votre aide !!!
voici le code:
[code]
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel='stylesheet' href="../style.css" type='text/css'>
<?
$db = mysql_connect('localhost','root','');
mysql_select_db('generals',$db);
$con = "SELECT `login` FROM joueur WHERE `id` = '".$_SESSION['id_joueur']."';" ;
$resultat = mysql_query($con) OR die('erreur selection login joueur');
$fetch = mysql_fetch_array($resultat) ;
$joueur = $fetch[0] ;
$con = "SELECT `type`,`debut`,`fin`,`attaquant`,`defenseur` FROM action WHERE `attaquant` = '".$joueur."' OR `defenseur` = '".$joueur."' ;" ;
$resultat = mysql_query($con) OR die('erreur selection action');
$infos = mysql_num_rows($resultat) ;
if($infos!=0){
$fetch = mysql_fetch_array($resultat) ;
$type = $fetch[0] ;
$debut = $fetch[1] ;
$fin = $fetch[2] ;
$attaquant = $fetch[3] ;
$defenseur = $fetch[4] ;
}
mysql_close();
?>
<form name="form">
<input type="hidden" value="<? echo($fin)?>" name="test">
</form>
<script>
// la date à partir de laquelle on compte
//var cible = new Date("december 31 2006 03:00:00");
var cible = new Date(document.form.test.value);
// nombre de millisecondes par jour, heure, minute et seconde
var mms_heure = 60 * 60 * 1000;
var mms_minute = 60 * 1000;
var mms_seconde = 1000;
function decompte() {
// la date courante
var aujourdhui = new Date();
// on crée les variables qui accueilleront les différences entre aujourd'hui et la date à atteindre
var change_j = -1;
var change_h = -1;
var change_m = -1;
// le total de millisecondes de différences
var diff_mms = cible.getTime() - aujourdhui.getTime();
// pour les heures
diff_heures = Math.floor(diff_mms / mms_heure);
diff_mms -= diff_heures * mms_heure;
// les... minutes
diff_minutes = Math.floor(diff_mms / mms_minute);
diff_mms -= diff_minutes * mms_minute;
// les secondes
var diff_secondes = Math.floor(diff_mms / mms_seconde);
//j'ai essayé mais bon c'est pas top
/*if(document.formulaire.heures.value <= '0'){
document.write('Terminé');
}*/
// on affecte nos résultats aux champs du formulaire
document.formulaire.heures.value = diff_heures;
document.formulaire.minutes.value = diff_minutes;
document.formulaire.secondes.value = diff_secondes;
// on relance la fonction pour actualiser à la seconde
setTimeout("decompte()",1000);
}
</script>
</head>
<body onLoad="decompte()">
<?
if($infos!=0){
echo('
<table class="table-milieu" align="center">
<tr>
<td class="milieu">
<form name="formulaire">
<font class="texteNoir">
<center>
<b>'.$type.' de '.$defenseur.'.</b><br>
Il reste encore :
<input type="text" name="heures" size="2" readonly="1" class="fond_jaune"> heures
<input type="text" name="minutes" size="2" readonly="1" class="fond_jaune"> minutes
<input type="text" name="secondes" size="2" readonly="1" class="fond_jaune"> secondes !!
</center>
</font>
</form>
</td>
</tr>
</table>
');
}else{
echo('
<table class="table-milieu" align="center">
<tr>
<td class="milieu">
<font class="texteNoir"><center><b>Rien a signalé pour le moment mon général</b></center></font>
</td>
</tr>
</table>
');
}
?>
</body>
[/code]