Déclenchement d'une alerte suivant une heure définie

Résolu
simeone1 Messages postés 28 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 28 mai 2008 - 7 avril 2008 à 16:49
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 8 avril 2008 à 17:19
salut tt le monde
Je suis un débutant en java dans et je souhaiterais lancé une alerte apres 21h15
pour cela j'ai fais mon petit programme en java script dans une jsp.
mon programme ne marche pas,
vous pouvez m'aidé
Merci bcppp d'avance,
Voici le code que j'ai mis dans la jsp

<

script language=
"Javascript">
function Time()
{
Digitale =
new date();
heure = Digitale.getHours();
minute = Digitale.getMinutes();

if (heure == 21 && minute == 15)

{
alerte(
"pensez a sauvgarder vos données le site sera fermé apres 21h30!!!");

}
}
</script>

13 réponses

nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
7 avril 2008 à 17:15
Salut,

il ne faut pas confondre javascript avec java, java est un langage compilé, javascript est un langage de script directement interprèté par le navigateur : pas de compilation !!!

il n'y a pas de 'e' a la fin de alert !!!

Si t'a besoin d'aide, MP !!!
3
Axe971 Messages postés 75 Date d'inscription mardi 20 novembre 2007 Statut Membre Dernière intervention 9 janvier 2009 2
7 avril 2008 à 21:37
Salut,

Ton code semble  incomplet et je crois que tu confonds toujours java et javascript.
Il te manque un timer pour lancer ta fonction périodiquement.

Regarde du coté de la fonction setTimeout :


setTimeout ("Fonction / Expression", Delai );

Les indications de Zobibol sont bonnes, il faut un code un peu plus élaboré à mon avis.

Bonne chance,
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
8 avril 2008 à 08:31
Bonjour,

    en plus de ce qu'ont dit les autres intervenants, à juste titre,
       si le javascript est dans un .js, ce fichier ne doit comporter que du javascript
       et rien d'autre !   donc pas de balise <script....> </script>.

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
3
Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
8 avril 2008 à 09:20
Après une bonne nuit de repos bien mérité, la méthode time(), tu l'appeles ou ?
parce qu'inclure un fichier (jsp ???) avec un tag script c'est déjà pas super propre ....
si c'est une page jsp, il y a :



<jsp:include page="MyPage.jsp" />




si c'est du javascript




<SCRIPT language
=
javascript
src
=
"alerte.js"
></
SCRIPT
>






puis ensuite dans la page il faut appeler la méthode time()
voire, encore mieux, faire un truc du style:



setInterval("time", 1000)







et voilà le travail !






[o-_-o]
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
8 avril 2008 à 12:28
Bah une fois qu'il est 21h15(ou plus d'ailleurs) tu kill ton timer :

<script language="Javascript">
// initialise l'interval
var timer = setInterval("time()", 1000); // ok, je sais vérifier toutes les secondes, c'est un peu naze
function Time(){
    Digitale = new date();
    heure = Digitale.getHours();
    minute = Digitale.getMinutes();    if (heure 21 && minute 15)
        {
            alert("pensez a sauvegarder vos données le site sera fermé apres 21h30!!!");
            clearInterval(timer);
        }
}
</script>

[o-_-o]
3
simeone1 Messages postés 28 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 28 mai 2008
8 avril 2008 à 15:56
Ca marcheeeeeeeee,
grace à vous j'ai pu faire mon pti programme.
Merci Zobibol pour la fonction et a vous tous.

juste une autre question toute bête
pour faire appel à ma jsp j'ai utilisé:
<jsp:include page="login/alerte.jsp" />
j'aimerais savoir s'elle doit etre spécialement à l'interieur d'une balise précise dans l'autre jsp ? Merci.

Voici le code pour ceux qui veulent s'en sevrir.
<

html>
<head>
<title>date & heure systeme
</title>
</head>
<script language=
"JavaScript">
// initialise l'interval
var timer = setInterval(
"Time()", 1000);

function Time()

{
var d =
new Date();
heure =d.getHours();
minute =d.getMinutes();
sec =d.getSeconds();
sec0=
"" ; min0=
"" ; heure0=
"" ;

if(sec<10)
sec0=
"0";

if (minute<10)
min0=
"0";

if (heure<10)
heure0=
"0";
sec0+=sec;
min0+=minute;
heure0+=heure;

if (heure0 == 21 && min0 == 15 && sec0 == 00 )

{
alert(
"pensez a sauvegarder vos données le site sera fermé après 21h30!!!");

}
document.aaa.ccc.value=heure0+
':'+min0+
':'+sec0;

//window.document.write(heure0+':'+min0+':'+sec0);
pa = setTimeout(
"Time()",1000);

}
</script>
<body onLoad=
"Time()" onUnload=
"clearTimeout(pa)">
</body>
<form name=
"aaa">
HEURE:
<input name=
"ccc" type=
"text">
</form>
</html>
3
Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
8 avril 2008 à 16:09
Pour ce qui est du positionnement de la balise




<jsp:include page




il n'y a pas de position précise ni de balise tu la mets ou bon te semble.
En outre, il y a toujours le problème de l'utilisateur qui va se conneter à 21h16 et qui ne verra pas le message...
il faudrait affiner ton test
if (heure0 == 21 && min0 >= 15 && sec0 == 00 )
de plus, la méthode time() est appelé deux fois, il faut : soit que tu supprimes l'appel à onload du body , soit (le plus simple) que tu supprimes

var timer = setInterval(
"Time()", 1000);

et dans ton test

if (heure0 == 21 && min0 >= 15 && sec0 == 00 )   ajoute donc
clearTimeout(pa) (après le alert) comme ça tu libères un peu de mémoire. (pfiou mais pourquoi que j'écris donc en bleu moi ???)

[o-_-o]
3
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
8 avril 2008 à 17:19
Si ton problème est règlé merci de mettre la réponse qui t'a aidé en répone accèpté !!!

Si t'a besoin d'aide, MP !!!
3
Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
7 avril 2008 à 17:20
Bonjour, en effet, il n'y a pas de e à la fin de alert ... c'est peu être celui de sauvegarde qui s'est barré ;o) "sauvgarder"
Ensuite c'est ultra restrictif comme test, si le gars se connect à 21h16, il aura jamais le message....
Et enfin, il faut lancer un timer parce que s'il  est connecté avant 21h15, il n'aura jamais le message non plus !!!
ça devient un poil plus complexe a gérer !

[o-_-o]
0
simeone1 Messages postés 28 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 28 mai 2008
7 avril 2008 à 17:55
Merci pour votre réponse, j'ai rectifié mais malheureusement ca ne marche tjr pas.


J'aimerais juste vous précisez que je fais appel a cette jsp a l'aide de :


<SCRIPT language=
javascript src=
"alerte.jsp"></SCRIPT> dans une autre jsp

Je ne sais vraiment pas si ca marche avec ca ou pas.
jugez-vous que le code est complet ?
Merci encore pour votre aide.
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
8 avril 2008 à 08:43
A oui, j'avais complètement loupé ce passage !!!

merci bulez, a++

Si t'a besoin d'aide, MP !!!
0
simeone1 Messages postés 28 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 28 mai 2008
8 avril 2008 à 12:05
Bonjour,
J'espere que vous allez bien et que vous passez une bonne matinée,
je vous remercie d'abord pour toutes ces informations qui m'ont vraiment aidé pour mieux optimiser mes recherches.
Alors, mon code javascript je le met dans une jsp, et si j'utilise la fonction setTimeout ("Fonction / Expression", Delai );ne marchera pas dans mon cas car je souhaiterais que le delai soit fixe.
càd: Une fois l'heure est à 21h15 une boite de dialogue se déclenche pour informer les internautes de sauvegarder leur données.
0
simeone1 Messages postés 28 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 28 mai 2008
8 avril 2008 à 17:11
Merci Zobibol, c'est fait .
Merci pour votre aide.
0
Rejoignez-nous