Avatar billede heyn Nybegynder
11. januar 2006 - 15:40 Der er 8 kommentarer og
1 løsning

Automatisk opdatering hvert kvarter

Hej Alle

På min arbejdsplads har folk det med at glemme at opdatere siden med produktionstyringssystemet, så når der er gået et par timer og der er kommet nye opgaver opdager de det ikke.
Er der nogle der har en ide til hvordan et script kunne se således at siden:
1) Automatisk genindlæser sig selv hvert kvarter.
2) Kun hvis systemet ikke har været anvendt i mere end et kvarter.

Mvh Christian
Avatar billede barklund Nybegynder
11. januar 2006 - 15:43 #1
Tja, du kan jo lave det onload på siden:

window.onload = function() { setTimeout("location.reload(true);", 15*60*1000); };

Så burde den vist reloade siden efter 15 minutter på den samme html-side. Dog hvis du bruger frames, kan det tænkes, at der skal mere til for at opnå den ønskede effekt.

:)

--
Morten Barklund
Avatar billede heyn Nybegynder
11. januar 2006 - 15:43 #2
Ang. 2) Altså ikke hvis systemet ikke har været anvendt i et kvarter, men hvis browser-vinduet ikke har været anvendt i et kvarter.
Avatar billede heyn Nybegynder
11. januar 2006 - 15:44 #3
Jeg bruger iframes.
Avatar billede barklund Nybegynder
11. januar 2006 - 15:52 #4
Så er det jo nødvendigt at vide lidt mere om opbygningen, for at komme med et bud :)
Avatar billede heyn Nybegynder
11. januar 2006 - 16:09 #5
Tænker du på noget i stil med
<script language="JavaScript" type="text/javascript">
function genindlaes(){ setTimeout("location.reload(true);", 15*60*1000); }
</script>
</head>
<body onload="return genindlaes()">
...
eller er det nok med:
<script language="JavaScript" type="text/javascript">
window.onload = function() { setTimeout("location.reload(true);", 15*60*1000); };
</script>

Hvis en medarbejder har arbejdet på en opgave i 20 min. og jævnligt anvender mus og tastatur i browseren, vil 'nedtællingen' så begynde forfra hver gang der er aktivitet. Ellers kan medarbejderen jo blive afbrudt midt i arbejdet?
Kan man bruge 'dokument' istedet for 'window'?
Avatar billede heyn Nybegynder
11. januar 2006 - 16:15 #6
Når jeg indlæser sider fra en form placeret i <iframe>-dokumentet kalder sag.php indlæses denne side også i <iframe>. Så langt fungerer det. Men det er jo via data i action-elementet i <form>.
Avatar billede barklund Nybegynder
11. januar 2006 - 16:15 #7
Ovenstående vil blot reloade 15 minutter efter siden er hentet. Vil du registerere muse- og taste-bevægelser på siden, skal der lidt mere til. Og ja, det kan man vist nok godt :)
Avatar billede heyn Nybegynder
20. januar 2006 - 16:22 #8
Jeg valgte følgende model:

<script type="text/javascript">
function update_page(){
    tid = 5*60*1000;
    setTimeout( "document.updater.submit();",tid);
    return true;
}
document.onload = update_page();
</script>
</head>
<body>
<form name="updater" action="oversigt.php" method="post" target="_self">
...
diverse nødvendige input
...
</form>

Det virker med iframes. Også i andre browsere end EI6.
Om det fungerer med iframes hvis man bruger window.onload = update_page(); ved jeg ikke.
En mere kompliseret løsning der tager hensyn til om siden har været anvendt i tidsintervallet kan ses på http://www.eksperten.dk/spm/679934

Lægger du et svar?
mvh Christian
Avatar billede heyn Nybegynder
07. februar 2006 - 16:45 #9
Nå - det var ærgerligt - så må jeg gøre det selv.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester