Avatar billede phpbegynder2004 Nybegynder
23. december 2006 - 18:17 Der er 8 kommentarer og
1 løsning

Redirect ved inaktivitet i 10 min

Hej,

Jeg har et chatscript, der opdaterer hvert sekund. Dette gør, at en brugers session konstant bliver opdateret og han/hun vil derfor aldrig blive smidt af for inaktivitet. Heller ikke selvom han/hun har forladt computeren i en uge!

Derfor: er det muligt at lave noget client-side scripting, hvor klienten bliver smidt af, hvis han ikke har f.eks. skrevet en chatbesked i mere end 10 min.?

På forhånd tak for hjælpen!
Avatar billede kalp Novice
23. december 2006 - 20:14 #1
mere pga. dit nick.. det kan være du kan hente inspiration fra
http://www.eksperten.dk/spm/320350
Avatar billede phpbegynder2004 Nybegynder
23. december 2006 - 20:51 #2
Okay tak for tippet... Men min chat fungerer sådan set fejlfrit. Det eneste er, at jeg har lavet nogle tilbyggelser for at den virker sammen med resten af websitet.
Disse tilbyggelser skulle også laves til oleboles chat og så ville jeg have problemet igen.

Tror ikke det jeg søger er så kompliceret.
Kan man i javascript starte en timer når man går ind på siden. Denne timer bliver resetet hver gang man trykker på en submit knap.
Hvis timeren når eg. 300 sekunder bliver man redirected.
Avatar billede phpbegynder2004 Nybegynder
23. december 2006 - 21:01 #3
Har oprettet et ny spørgsmål hvor jeg prøver at ændre selve spørgsmålet lidt:
http://www.eksperten.dk/spm/752275
Avatar billede kalp Novice
23. december 2006 - 21:04 #4
hvis du bruger meta refresh skal du rette det til javascript reload.. altså..

<SCRIPT LANGUAGE="JavaScript1.1">
var RefreshID = setInterval("window.location.reload()",10000);

function StopRefresh(){
clearInterval(RefreshID);
}

function RestartRefresh(){
RefreshID = setInterval("window.location.reload()",10000);
}
</SCRIPT>


og på din box hvor man indtaster sin besked

<textarea NAME=NewMsg rows=2 cols=60 wrap=virtual
onFocus="StopRefresh();return true;"></textarea>
Avatar billede kalp Novice
23. december 2006 - 21:05 #5
hmm.. nu kan jeg ikke lige huske hvad jeg tænkte he he
Avatar billede phpbegynder2004 Nybegynder
23. december 2006 - 21:15 #6
Fedt tak! Har faktisk lige siddet og leget med noget lignende:

<html>
<head>
<script type="text/javascript">

function remind(msg1) {
window.location="http://someplace.com";
alert(msg);
}

function submit_msg() {
/* Send Meddelelse */
clearTimeout(mytime);
mytime=setTimeout('remind(10)',10000);
write_msg(document.getElementById("chatmsg").value);
document.getElementById("chatmsg").value="";
}
</script>
</head>
<body onload="mytime=setTimeout('remind(10)',10000)">
asdas
<input type="button" value="Skriv" onclick="submit_msg()" >
</body>

</html>
Avatar billede kalp Novice
23. december 2006 - 21:19 #7
jeg kan huske hvad det var at jeg tænkte nu.. det var selvfølgelig at når man trykker på textarea (kunne også være submit knap) så nulstiller man en tæller.

men der er stadig problemet med at din autorefresh..
jeg er ikke så hård til javascript, så ville nok prøve at gemme tiden i en cookie hvilket ikke er optimalt..

og ellers hvis du har php med så kan du gemme tiden i session.. så går den ikke tabt ved refresh
Avatar billede kalp Novice
23. december 2006 - 21:24 #8
kom til at tænke på noget.. du har vel ikke lavet det så hele din side reloader eller?

for hvis det bare er en iframe lignende så kan du sagtens bruge den kode jeg har...
så tæller den jo ned til brugeren har fået trykket på send knappen og gør han ikke det bliver man redirekted.
Avatar billede phpbegynder2004 Nybegynder
23. december 2006 - 21:32 #9
Ja, det ligger i en iframe. Så din er god nok. Faktisk tror jeg problemet er løst nu.
Tak for hjælpen!

Læg et svar
http://www.eksperten.dk/spm/752275 ;)
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