Date et Heure - setDay() - setWeekDay()

Résolu/Fermé
nrobin - 28 avril 2005 à 18:36
 nrobin - 29 avril 2005 à 14:32
Bonjour,
désolé pour la longueur du message mais c'est pour mieux cibler le problème.

J'effectue un stage et ma mission consiste en l'implantation d'un système de télésurveillance d'un magasin d'informatique.

J'utilise une caméra IP équipée d'une détection de mouvement.
Je souhaite pouvoir activer cette détection en cochant une checkbox (chose que j'ai effectué). cela fonctionne.

A présent, j'aimerai qu'en cochant la checkbox, la détection ne soit activée que pendant une période prédéfinie (du lundi au vendredi (de 20h a 8h tous les jours) et le week end (du vendredi 20h au lundi 8h)).

Pour cela, je pensais utiliser les fonctions setDay(), setHours(), setMinutes() et setInterval().

Le problème, c'est que j'utilise Dreamweaver 4 et je ne trouve nul part setDay() et les fonctions setHours() et setMinutes() ne fonctionnent pas comme je le souhaiterai.

Pour le moment, je cherche juste à comprendre comment utiliser ces fonctions.

Voila le script que j'ai bidouillé:
____________________________________________

<HTML>
<HEAD>
<TITLE>Date</TITLE>
<SCRIPT LANGUAGE="JavaScript">

function Depart()
{
var d = new Date()
/* getDay retourne le jour de la semaine sous forme d'un chiffre de 0 à 6 (0 correspondant au dimanche) */

if (d.getDay()==0)
{
j="dimanche";
}
else if (d.getDay()==1)
{
j="lundi";
}
else if (d.getDay()==2)
{
j="mardi";
}
else if (d.getDay()==3)
{
j="mercredi";
}
else if (d.getDay()==4)
{
j="jeudi";
}
else if (d.getDay()==5)
{
j="vendredi";
}
else if (d.getDay()==6)
{
j="samedi";
}

// document.horloge.cadran.value=j;
jn=d.setDay(5);

total = j + " - " + jn;
document.horloge.cadran.value = total;
}

</SCRIPT>
</HEAD>
<BODY ONLOAD="Depart()">
Mon horloge :
<FORM NAME="horloge">
<INPUT NAME="cadran" TYPE="text" Size=30 READONLY>
</FORM>
</BODY>
</HTML>
____________________________________________

Si quelqu'un voit comment je peux régler ce problème, je suis preneur. Je cherche un peu partout sur le net, et je ne vois pas qu'elles autres fonctions je pourrais utiliser. :.o( Les plus appropriées me semblent être celles que j'ai évoquées auparavant.

Je vous remercie pour votre attention.
Nico.

________________
Je ne suis qu'un malheureux débutant. :o( Ayez pitié de moi, svp
- C'est en débutant qu'on devient grand - (enfin, je crois)

4 réponses

Bonjour,
désolé pour la longueur du message mais c'est pour mieux cibler le problème.

J'effectue un stage et ma mission consiste en l'implantation d'un système de télésurveillance d'un magasin d'informatique.

J'utilise une caméra IP équipée d'une détection de mouvement.
Je souhaite pouvoir activer cette détection en cochant une checkbox (chose que j'ai effectué). cela fonctionne.

A présent, j'aimerai qu'en cochant la checkbox, la détection ne soit activée que pendant une période prédéfinie (du lundi au vendredi (de 20h a 8h tous les jours) et le week end (du vendredi 20h au lundi 8h)).

Pour cela, je pensais utiliser les fonctions setDay(), setHours(), setMinutes() et setInterval().

Le problème, c'est que j'utilise Dreamweaver 4 et je ne trouve nul part setDay() et les fonctions setHours() et setMinutes() ne fonctionnent pas comme je le souhaiterai.

Pour le moment, je cherche juste à comprendre comment utiliser ces fonctions.

Voila le script que j'ai bidouillé:
____________________________________________

<HTML>
<HEAD>
<TITLE>Date</TITLE>
<SCRIPT LANGUAGE="JavaScript">

function Depart()
{
var d = new Date()
/* getDay retourne le jour de la semaine sous forme d'un chiffre de 0 à 6 (0 correspondant au dimanche) */

if (d.getDay()==0)
{
j="dimanche";
}
else if (d.getDay()==1)
{
j="lundi";
}
else if (d.getDay()==2)
{
j="mardi";
}
else if (d.getDay()==3)
{
j="mercredi";
}
else if (d.getDay()==4)
{
j="jeudi";
}
else if (d.getDay()==5)
{
j="vendredi";
}
else if (d.getDay()==6)
{
j="samedi";
}

// document.horloge.cadran.value=j;
jn=d.setDay(5);

total = j + " - " + jn;
document.horloge.cadran.value = total;
}

</SCRIPT>
</HEAD>
<BODY ONLOAD="Depart()">
Mon horloge :
<FORM NAME="horloge">
<INPUT NAME="cadran" TYPE="text" Size=30 READONLY>
</FORM>
</BODY>
</HTML>
____________________________________________

Si quelqu'un voit comment je peux régler ce problème, je suis preneur. Je cherche un peu partout sur le net, et je ne vois pas qu'elles autres fonctions je pourrais utiliser. :.o( Les plus appropriées me semblent être celles que j'ai évoquées auparavant.
____________________________________________
Aparremment setDay() ne fonctionne pas. setWeekDay() est sebcé faire la même chose. Le problème, c'est qu'aucune de ces deux fonctions ne semblent exister. sinon, setDate() fonctionne. Il permet de fixer la valeur du jour du mois (entre 1 et 31). Les valeurs retournées par ces fonctions sont des entiers en millisecondes.
[pour info, j'édite mes pages avec Dreamweaver 4]
____________________________________________


Je vous remercie pour votre attention.
Nico.

________________
Je ne suis qu'un malheureux débutant. :o( Ayez pitié de moi, svp
- C'est en débutant qu'on devient grand - (enfin, je crois)
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
29 avril 2005 à 09:52
En tout cas ces fonctions ne sont pas répertoriées dans ma documentation.
Je ne vois pas, dsl

++
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
29 avril 2005 à 09:58
Par contre, je n'ai pas tres bien cerné de que font ces fonctions, mais tu as celles-ci :
int mktime(int hours, int minutes, int seconds, int month, int day, int year, int is_dst);
qui te permet de mettre sous forme de temps secondes une date passée, courante ou future.

et :
string date(string format, int timestanp); pour mettre un temps sous forme de chaine représentant la date.
0
Le problème est réglé. J'ai revu ma façon de penser.
çà marche beaucoup mieu

voila se ke çà donne:

<html><head><title>Message d'alertes programmés à date régulière</title>
<script language="JavaScript">
date=new Date();
jour=date.getDay();
heure=date.getHours();

<!-- getDay retourne le jour de la semaine sous forme d'un chiffre de 0 à 6 (0 correspondant au dimanche) -->
/* ConversionJour() convertit le jour de la semaine sous forme de chiffre, sous forme de nom */
function ConversionJour()
{
if (date.getDay()==0)
{
jour="dimanche";
}
else if (date.getDay()==1)
{
jour="lundi";
}
else if (date.getDay()==2)
{
jour="mardi";
}
else if (date.getDay()==3)
{
jour="mercredi";
}
else if (date.getDay()==4)
{
jour="jeudi";
}
else if (date.getDay()==5)
{
jour="vendredi";
}
else if (date.getDay()==6)
{
jour="samedi";
}
}

<!-- Programmation de la détection en SEMAINE -->
if (((jour==1)&&(heure>=20))||((jour>=2)&&(jour<=4)&&((heure<=8)||(heure>=20)))||((jour==5)&&(heure<=8))) // Si le jour est compris entre Lundi et Vendredi: Declenchement de la detection la nuit de 20h a 8h
{
ConversionJour();
alert("Nous sommes "+jour+".\nIl est plus de "+heure+" h.\nSEMAINE: Detection Activee");
}

<!-- Programmation de la détection en WEEK END -->
else if (((jour==5)&&(heure>=20))||(jour==6)||(jour==0)||((jour==1)&&(heure<=8))) // Entre Vendredi 20h et Lundi 8h: Detection Activee
{
ConversionJour();
alert("Nous sommes "+jour+".\nIl est plus de "+heure+" h.\nWEEK END: Detection Activee");
}

<!-- Dans le cas contraire: Detection desactivee par defaut -->
else
alert("DEFAUT: Detection Desactivee");

</script>
</head><body>
</body></html>

il ne me reste plus qu'à remplacer les alertes par la partie "detection de mouvement de la camera" et puis c'est tout.

encore merci
0