Redirection automatique à une certaine heure
Résolu/Fermé
Spritkiller
Messages postés
11
Date d'inscription
samedi 19 novembre 2011
Statut
Membre
Dernière intervention
5 novembre 2014
-
8 avril 2013 à 17:37
Spritkiller Messages postés 11 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 5 novembre 2014 - 9 avril 2013 à 19:57
Spritkiller Messages postés 11 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 5 novembre 2014 - 9 avril 2013 à 19:57
A voir également:
- Redirection automatique à une certaine heure
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Message automatique thunderbird - Guide
- Colissimo heure de livraison après-midi - Forum Consommation & Internet
- Cette photo n’a pas été prise cette année. trouvez la date, l'heure et avec quel modèle d'appareil photo elle a été prise. ✓ - Forum Graphisme
4 réponses
batoune
Messages postés
538
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
4 avril 2017
96
8 avril 2013 à 17:48
8 avril 2013 à 17:48
Je suis pas un expert en javascript, mais est ce que en faisant un truc comme ça ça ne marcherais pas :
A l'ouverture de ta page, tu appel la fonction changePlayer(), et cette fonction va tester l'heure qu'il est, et si il est l'heure de changer de player, elle change, sinon elle ce rappelle toute seule au bout de X milliseconde (5000 dans l'exemple) via la méthod setTimeout(...)
function changePlayer(){
var today=new Date();
var heure="";
var time=today.getHours();
var jour=today.getDay();
heure=""
if (time>=21 && time<00 && jour==5) {
document.location.href="player2.php"
}
else{
setTimeout ("changePlayer()", 5000);
}
}
A l'ouverture de ta page, tu appel la fonction changePlayer(), et cette fonction va tester l'heure qu'il est, et si il est l'heure de changer de player, elle change, sinon elle ce rappelle toute seule au bout de X milliseconde (5000 dans l'exemple) via la méthod setTimeout(...)
function changePlayer(){
var today=new Date();
var heure="";
var time=today.getHours();
var jour=today.getDay();
heure=""
if (time>=21 && time<00 && jour==5) {
document.location.href="player2.php"
}
else{
setTimeout ("changePlayer()", 5000);
}
}
Spritkiller
Messages postés
11
Date d'inscription
samedi 19 novembre 2011
Statut
Membre
Dernière intervention
5 novembre 2014
1
8 avril 2013 à 18:09
8 avril 2013 à 18:09
Merci beaucoup pour ton aide qui, malgré qu'il paraissait juste, ne fonctionne pas.
Je l'ai testé pour le passage de 17h à 18h, et le résultat n'a pas été très concluant :/
Je l'avais juste modifié à des fins de tests à l'échelle des minutes, mais ça ne fonctionnait pas donc j'ai remis le code initial attendu le passage de 17h à 18h, et ça n'a rien donné de concluant :s
Donc si tu as d'autres solutions, ou que quelqu'un d'autre qui passe pas là en a, je les accueillerais avec plaisir!
Merci encore,
Cordialement,
Je l'ai testé pour le passage de 17h à 18h, et le résultat n'a pas été très concluant :/
Je l'avais juste modifié à des fins de tests à l'échelle des minutes, mais ça ne fonctionnait pas donc j'ai remis le code initial attendu le passage de 17h à 18h, et ça n'a rien donné de concluant :s
Donc si tu as d'autres solutions, ou que quelqu'un d'autre qui passe pas là en a, je les accueillerais avec plaisir!
Merci encore,
Cordialement,
batoune
Messages postés
538
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
4 avril 2017
96
9 avril 2013 à 14:52
9 avril 2013 à 14:52
Et en calculant le temps (en miliseconde) entre l'heure a laquelle il faut changer le player et l 'heure courante, et en passant ce temps en paramètre de la fonction setTimeout(...) est ce que sa ne marcherait pas mieux?
genre :
au chargement de la page :
fonction calculDate(){
var currentDate=new Date();
var changeDate=//ici la bonne date;
var millisecondeBeforeChange;
//calcul de la différence entre currentDate et changeDate
//.....
setTimeout("changePlayer()",millisecondeBeforeChange);
}
function changePlayer(){
document.location.href="player2.php"
}
genre :
au chargement de la page :
fonction calculDate(){
var currentDate=new Date();
var changeDate=//ici la bonne date;
var millisecondeBeforeChange;
//calcul de la différence entre currentDate et changeDate
//.....
setTimeout("changePlayer()",millisecondeBeforeChange);
}
function changePlayer(){
document.location.href="player2.php"
}
Spritkiller
Messages postés
11
Date d'inscription
samedi 19 novembre 2011
Statut
Membre
Dernière intervention
5 novembre 2014
1
9 avril 2013 à 15:54
9 avril 2013 à 15:54
Merci de la réponse, je vais essayer, mais à quel format je met la date? Parce qu'en regardant plusieurs script javascript j'ai vu qu'il y avait pas mal de formats.
Merci encore,
Cordialement,
Merci encore,
Cordialement,
batoune
Messages postés
538
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
4 avril 2017
96
9 avril 2013 à 16:39
9 avril 2013 à 16:39
Ouais, j'ai vu aussi qu'il y avait pas mal de format différent,
le truc c'est de réussir a avoir le temps entre les deux date en milliseconde pour que la fonction setTimeout(....) puisse le prendre en compte
le truc c'est de réussir a avoir le temps entre les deux date en milliseconde pour que la fonction setTimeout(....) puisse le prendre en compte
batoune
Messages postés
538
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
4 avril 2017
96
Modifié par batoune le 9/04/2013 à 17:27
Modifié par batoune le 9/04/2013 à 17:27
J'ai testé ça :
chez moi sa marche, en mettant alert("OK"); dans la fonction changePlayer() j'ai bien le message "OK" qui apparait à l'heure que je veux.
Si tu met ta fonction pour changer de player a la place ça devrait le faire...
<html lang="en"> <head> <meta charset="utf-8" /> <title>Ma page</title> <SCRIPT LANGUAGE="JavaScript"> function calculDate(){ //on recupere la date courante convertie en milliseconde var currentDate=new Date().getTime(); //on recupere la date courante var changeDate=new Date() //on lui met l'heure de changement désirée changeDate.setHours(20); //on lui met la minute de changement désirée changeDate.setMinutes(0); //on lui met la seconde de changement désirée changeDate.setSeconds(0); //on lui met la milliseconde de changement désirée changeDate.setMilliseconds(0); //on la convertie en millisecondes changeDate=changeDate.getTime(); //on calcule la différence entre les deux date var diff = changeDate-currentDate; //si la différence est positive if (diff>0){ //on programme le changement de player dans "diff" millisecondes setTimeout("changePlayer()",diff); } //sinon, on change tout de suite de player else{ changePlayer(); } } //fonction qui change le player function changePlayer(){ //TODO } </SCRIPT> </head> <body topmargin="0" leftmargin="0" onLoad="calculDate();"> <!-- contenu de la page web --> </body> </html>
chez moi sa marche, en mettant alert("OK"); dans la fonction changePlayer() j'ai bien le message "OK" qui apparait à l'heure que je veux.
Si tu met ta fonction pour changer de player a la place ça devrait le faire...
Spritkiller
Messages postés
11
Date d'inscription
samedi 19 novembre 2011
Statut
Membre
Dernière intervention
5 novembre 2014
1
9 avril 2013 à 19:57
9 avril 2013 à 19:57
Woow, merci beaucoup! Je m'apprêtais à coder moi-même ce système mais tu me l'as donné tout fait, fonctionnel, je te remercie énormément! Ca va beaucoup me servir! Je commençais à perdre espoir mais tu as trouvé la solution, c'est vraiment super!
Encore merci,
Cordialement,
Encore merci,
Cordialement,