COMPTE À REBOURS RAFRAÎCHIT AUX SECONDES

jeff_the_lifeguard Messages postés 73 Date d'inscription lundi 13 octobre 2003 Statut Membre Dernière intervention 16 août 2004 - 25 févr. 2004 à 20:23
Aiexis Messages postés 2 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 15 janvier 2012 - 15 janv. 2012 à 11:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/15775-compte-a-rebours-rafraichit-aux-secondes

Aiexis Messages postés 2 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 15 janvier 2012
15 janv. 2012 à 11:01
Merci pour la source, mais les 3/4 du code sont complètement inutiles. Je sais que ça fait 10 ans que ça a été posté, mais voici la correction qui fait exactement la même chose pour 3 fois moins de lignes. En particulier les 2 fonctions date ne sont là que pour la déco.

<SCRIPT LANGUAGE="JavaScript">
function disp_delai(){
document.forms[0].elements[0].value=delai (2010,1,1,0,0);
setTimeout("disp_delai()",1000);
}

function delai(annee,mois,jour,heure,min)
{var date_fin=new Date(annee,mois-1,jour,heure,min)
var date_jour=new Date();
var tps=(date_fin.getTime()-date_jour.getTime())/1000;
var j=Math.floor(tps/3600/24); // récupere le nb de jour
tps=tps % (3600*24);
var h=Math.floor(tps / 3600); // recupère le nb d'heure
tps=tps % 3600;
var m=Math.floor(tps/60); // récupère le nb minute
tps=tps % 60
var s=Math.floor(tps);
var txt=j+" j "+h+" h "+m+" min et "+s+" sec";
return txt;}
</SCRIPT>
<html>
<head>
<title>Compte à rebours</title>
</head>

<form name="mail" method=get action="">
avant l'an 2010
</form>

</html>
Utilisateur anonyme
17 juin 2011 à 18:05
Salut j'ai un peu modifier pour qu'à la fin du temps il écrive "fin du concours" ou ce que vous voulez,lorsque le timer arrive à Zéro et que l'affichage soit possible autrement qu'avec un formulaire parce que c'était un peu contraignant!
voila le code:

<SCRIPT LANGUAGE="JavaScript">
function disp_delai(){
document.getElementById('bla').innerHTML=delai (2011,6,17,17,58);// pour écrire dans une div
//ou document.getElementById('bla').value=delai (2011,6,17,17,58); pour utiliser dans un champs texte
setTimeout("disp_delai()",1000);
}
function delai(annee,mois,jour,heure,min)
{var date_fin=new Date(annee,mois-1,jour,heure,min)
var date_jour=new Date();
var tps=(date_fin.getTime()-date_jour.getTime())/1000;
var j=Math.floor(tps/3600/24); // récupere le nb de jour
tps=tps % (3600*24);
var h=Math.floor(tps / 3600); // recupère le nb d'heure
tps=tps % 3600;
var m=Math.floor(tps/60); // récupère le nb minute
tps=tps % 60
var s=Math.floor(tps);
if(0>tps) { tps=0-tps; d='-'; } else { d=''; }
var txt=d+((j<10)?'0':'')+j+' j '+d+((h<10)?'0':'')+h+' h '+d+((m<10)?'0':'')+m+' min et '+d+((s<10)?'0':'')+s+' sec';
if((j<0) && ( h< 0) && ( m< 0) && ( s< 0))
{
var txt= 'Fin du concours';// texte à changer lorsque le timer arrive à zéro!
}
date_fin=don_date(date_fin);
return txt;

}
function don_date_jour()
{var date_jour=new Date();
date_jour=don_date(date_jour);
return date_jour;}
function don_date(une_date)
{var la_date;
var months=new Array(12);
months[1]="Janvier";
months[2]="Février";
months[3]="Mars";
months[4]="Avril";
months[5]="Mai";
months[6]="Juin";
months[7]="Juillet";
months[8]="Aout";
months[9]="Septembre";
months[10]="Octobre";
months[11]="Novembre";
months[12]="Décembre";
var days=new Array(7);
days[1]="Lundi";
days[2]="Mardi";
days[3]="Mercredi";
days[4]="Jeudi";
days[5]="Vendredi";
days[6]="Samedi";
days[7]="Dimanche";
var month=months[une_date.getMonth() + 1];
var day=days[une_date.getDay()];
var date=une_date.getDate();
var year=une_date.getYear();
}
</SCRIPT>
<html>
<head>
<title>Compte à rebours</title>
</head>



<form method=get action="">

<!-- -->
</form>

</html>
ryodo Messages postés 1 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 3 juillet 2010
3 juil. 2010 à 13:30
un code qui fais un compte a rebours avec des foto

<SCRIPT LANGUAGE="JavaScript">
<!--
i=10
function b()
{
document.forms[0].a.src=i+".jpg";
//document.write(document.forms[0].a.src);
i--;
if(i==-1)
{
clearTimeout(s);
s=0;
//document.forms[0].a.src="temps ecouler DSl";
}

}
s=setInterval("b()",1000);
//-->
</SCRIPT>

mm
<FORM METHOD=POST ACTION="">
<CENTER></CENTER>

</FORM>

</HTML>

</HTML>
tipouic Messages postés 20 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 2 octobre 2009
16 avril 2009 à 20:45
C'est normale HOU16, en PHP, il faut que les variables soit définies avant de les utilisées; donc commence ta page php avec :
<?php
$x1=2010;
$x2=1;
$x3=1;
$x4=0;
$x5=0;
?>
hou16 Messages postés 2 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 16 avril 2009
16 avril 2009 à 18:27
salut le script est excellent mais je veux que la date soit dynamique soit à travers une variable php ou lire à partir MySQL j'ai essayé ca mais ca ne fonctionne pas


<SCRIPT LANGUAGE="JavaScript">
function disp_delai(){

var annee = <?php echo $x1; ?>
var mois = <?php echo $x2; ?>
var jour = <?php echo $x3; ?>
var heure = <?php echo $x4; ?>
var minn = <?php echo $x5; ?>
document.forms[0].elements[0].value=delai (annee,mois,jour,heure,minn);
setTimeout("disp_delai()",1000);
}

function delai(annee,mois,jour,heure,min)
{var date_fin=new Date(annee,mois-1,jour,heure,min)
var date_jour=new Date();
var tps=(date_fin.getTime()-date_jour.getTime())/1000;
var j=Math.floor(tps/3600/24); // récupere le nb de jour
tps=tps % (3600*24);
var h=Math.floor(tps / 3600); // recupère le nb d'heure
tps=tps % 3600;
var m=Math.floor(tps/60); // récupère le nb minute
tps=tps % 60
var s=Math.floor(tps);

var txt=j+" j "+h+" h "+m+" min et "+s+" sec";
date_fin=don_date(date_fin);
return txt;}
function don_date_jour()
{var date_jour=new Date();
date_jour=don_date(date_jour);
return date_jour;}
function don_date(une_date)
{var la_date;
var months=new Array(12);
months[1]="Janvier";
months[2]="Février";
months[3]="Mars";
months[4]="Avril";
months[5]="Mai";
months[6]="Juin";
months[7]="Juillet";
months[8]="Aout";
months[9]="Septembre";
months[10]="Octobre";
months[11]="Novembre";
months[12]="Décembre";
var days=new Array(7);
days[1]="Lundi";
days[2]="Mardi";
days[3]="Mercredi";
days[4]="Jeudi";
days[5]="Vendredi";
days[6]="Samedi";
days[7]="Dimanche";
var month=months[une_date.getMonth() + 1];
var day=days[une_date.getDay()];
var date=une_date.getDate();
var year=une_date.getYear();
}
</SCRIPT>

<html>
<head>
<title>Compte à rebours</title>
</head>



<form name="mail" method=get action="">
avant la cloture
</form>

<?php
$x1=2010;
$x2=1;
$x3=1;
$x4=0;
$x5=0;


?>

</html>
tipouic Messages postés 20 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 2 octobre 2009
10 avril 2009 à 13:32
Salut
Pas mal comme script, il y a juste un petit défo. Quand la date viens juste d'être dépassé, il affiche -1j -1h -1min et -1sec.
Voici ma correction dans la fonction delai(), plus un petit formatage des chiffres (01 au lieu de 1):
if(0>tps) { tps=0-tps; d='-'; } else { d=''; }
var txt=d+((j<10)?'0':'')+j+' j '+d+((h<10)?'0':'')+h+' h '+d+((m<10)?'0':'')+m+' min et '+d+((s<10)?'0':'')+s+' sec';

Pour DNCVR, il te suffit de remplacer d='-'; par d=''; sur ma correction et tu auras ce que tu veux; pour GUEWENO, c'est "tps=0-tps;" par "tps=0;".
root2004 Messages postés 6 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 9 mai 2011
13 janv. 2009 à 20:32
Le script est excellent, pile ce que je cherchais. 10/10.
guewen0 Messages postés 1 Date d'inscription jeudi 28 avril 2005 Statut Membre Dernière intervention 5 mai 2005
5 mai 2005 à 12:26
salut
Comment faire pour que quand les decompt est a 0 il s'arette et ne parte pas dans les négatif (-1 - 2 -3 .......)
???
merci
DNCVR Messages postés 2 Date d'inscription dimanche 27 juillet 2003 Statut Membre Dernière intervention 26 juillet 2004
26 juil. 2004 à 22:53
excellent justement ce que je chercher, mais es possible d'inverser la date, je veux dire que quand la date est dépasser qu'il n'affiche pas (-12 jours) mais (12 jours) ??

Mon idée est de faire un conteur inverse du conte a rebours ^_^.

merci
jeff_the_lifeguard Messages postés 73 Date d'inscription lundi 13 octobre 2003 Statut Membre Dernière intervention 16 août 2004
25 févr. 2004 à 20:23
très bien fait, un peu compliquer pour fixer la date limite, mais bien fait
Rejoignez-nous