Heure et date

Soyez le premier à donner votre avis sur cette source.

Vue 12 899 fois - Téléchargée 749 fois

Description

Code javascript entierement commenté qui donne l'heure exacte (a la seconde pres) et la date. (fonction avancer telle que ajout de zero quand un nombre est plus petit que dix et autres...)

Source / Exemple :


<html>
<head>
<title>Heure et Date</title>
</head>
<script language="JavaScript">
function heure() { 		//on declare la fonction heure()
maintenant= new Date();		//on declare une nouvelle Date()
with (maintenant) {		//on declare qu'on doit utiliser maintenant (donc la nouvelle date)
jour = getDate()		//on declare que jour est egale a getDate() donc le jour d'aujourd'hui
mois = getMonth()+1	        //on declare que mois est egale a getMonth()+1 donc le mois ou nous sommes (pourquoi +1, parce que sinon ca vous met 1 mois avant)
annee = getYear()               //on declare que annee est egale a getYear() donc l'annee ou nous sommes.
heures = getHours()             //on declare que heures est egale a getHours() donc l'heure ou nous sommes.
minutes= getMinutes()		//on declare que minutes est egale a getMinutes() donc la minute ou nous sommes.
secondes= getSeconds()		//on declare que secondes est egale a getSecondes() donc la seconde ou nous sommes.
if (heures<10) {		//si heure est plus petit que 10.
a = "0"+getHours()		//a (l'affichage final de l'heure) en rajoute un zero avant getHours() car getHours() met simplement la minute et ne rajoute pas de zero.
}else{				//sinon (si heure est plus grand que dix bien evidemment).
a = getHours()			//on met simplement getHours(), donc simplement les minutes.
}				
if (minutes<10) {		//idem que precedament mais avec les minutes
b = "0"+getMinutes()
}else{
b = getMinutes()
}
if (secondes<10) {		//idem que precedament mais avec les secondes
c = "0"+getSeconds() 
}else{
c = getSeconds() 
}
if (a<2) {			//si a est plus petit que 2
d = "heure"			//d est egale a heure (au singulier!!)
}else{				//sinon (si a a plus grand que deux)
d = "heures" 			//d est egale a heures (au pluriel !!)
}
if (b<2) {			//idem que precedemment mais avec les minutes
e = "minute" 
}else{
e = "minutes"
}
if (c<2) {			//idem que precedemment mais avec les secondes.
f = "seconde" 
}else{
f = "secondes"
}
}
setTimeout("heure()", 1000)	//on 'appelle' la function heure toute les secondes (1000 est exprimé en millisecondes, tout le temps)
document.heuress.heur.value = a+" "+d+" "+b+" "+e+" "+c+" "+f //dans le document la balise form qui a pour nom heuress, et qui contient un 'objet' heur a pour valeur a+" "+d+" "+b+" "+e+" "+c+" "+f les deux guillemets sont des espaces.(quand on ajoute du texte a qqch de predefinis on met toujours des plus ou inversement.)
document.heuress.date.value = jour+"/"+mois+"/"+annee         //dans le document la balise form qui a pour nom heuress, et qui contient un 'objet' date a pour valeur jour+"/"+mois+"/"+annee les / entre les deux guillemets sont des separations visibles entre les choses predefinies.
}
</script>						      <!--fin du script-->
<body onload="heure()">					      <!--on lance (charge) la fonction heure() au demarrage de la page.-->
<form name="heuress">					      <!--la balise form qui a pour nom : heuress.-->
Il est : <input type="text" name="heur" size="32"> et nous sommes le : <input type="text" name="date" size="20"> <!--Les balises heure et date.(size definis la taille et input s'utilise toujours pour afficher des objet dans form (sauf le texte).).-->
</form> <!--//on ferme la form.-->
</body> <!--//on ferme body.-->
</html>

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
19
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
14 février 2008

Merci de ta réponse rapide !

J'ai rajouté type="text/javascript" mais ça ne va toujours pas. J'obtiens 6 fois le message suivant :

Avertissement à la colonne 8: caractère "<" est le premier caractère d'un délimiteur mais est apparu comme données (type #404) à cause de heures<10

Pour le body je n'ai pas essayé encore ! Ca va venir !!
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
Pour les erreurs du validateur ça vient probablement du fait qu'il a omis de mettre l'attribut type dans ça balise script. Donc sont <script language="JavaScript"> serait a remplacer par <script language="JavaScript" type="text/javascript">.

Pour ton body il suffit de rajouter l'attribut onload dans ta première balise et le tour est jouer.
Messages postés
19
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
14 février 2008

C'est formidable, ça marche très bien.
Deux questions cependant :

1) j'ai utilisé le validateur W3C et il ne veut pas du signe <
qui se trouve 6 fois, par exemple dans heures<10 et dans a<2

Y a-t-il un moyen d'éviter cela ?

2) à la ligne 51 il est dit de mettre
or moi j'ai déjà un juste après </head>

Est-il vrai qu'on ne peut pas avoir deux body ?

Ca fonctionne , c'est vrai, mais le validateur signale 7 erreurs
( c'est-à-dire 6 fois < et 1 body en trop).

Une solution pour moi ? Merci d'avance !

qis
Messages postés
121
Date d'inscription
mardi 3 mai 2005
Statut
Membre
Dernière intervention
31 décembre 2005

coté commentaire c'est bien fait
Messages postés
69
Date d'inscription
vendredi 13 septembre 2002
Statut
Membre
Dernière intervention
6 mai 2009

Bon petit "tutorial" pour les débutants, mais rien de neuf pour les plus avancés.

Félicitations tout de même
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.