Countdown problemen (Geavanceerd)

Status
Niet open voor verdere reacties.

Deputy

Nieuwe gebruiker
Lid geworden
15 mrt 2008
Berichten
2
Hallo mensen!

Mijn bedoeling is om een afteller te hebben die aftelt naar een bepaalde tijd (bijvoorbeeld van 01:30:30 naar 00(uren):00(minuten):00(seconden)) en vervolgens een php pagina laden.
Het onderstaande script doet dit min of meer alleen heb ik een probleem.

Ik heb dus een webbased game waarbij je je kan inloggen e.d. en heb die countdown hiervoor nodig (na zoveel minuten heb je dit of dat gebouwd etc....) onderstaande timer tikt gewoon de seconden af alleen het probleem is dat ik gewoon wil dat de timer door blijft lopen totdat hij op de nul zit.
Als ik de browser afsluit stopt de timer en begint overnieuw!! dat is dus helemaal niet de bedoeling!
Ook wil ik met PHP variabelen werken zoals
$time1=10;
$time2=30 (seconden);
$time3=$time1*$time2;
omdat ik dan vanuit mijn database kan beslissen op hoeveel tijd de afteller begint.

Is het stom om dit met Javascript te doen?

Onderstaande code heb ik:


<html>
<head>
<
<link rel="stylesheet" type="text/css" href="http://www.rpgs.nl/tswnavbar.css" />
<link rel="stylesheet" type="text/css" href="http://www.rpgs.nl/tswtabs.css" />

<title>.: RPG's.nl - Perseus :.</title>

<?php
include('include/head.php');
?>

</head>
<body>

<!-- content start -->
Resterende tijd:
<span id='bx0' class='z' style='text-align:left;'>05:00:00</span>
<script type='text/javascript'>
v=new Date();var bx0=document.getElementById('bx0');
function tbx0(){n=new Date();s=10-Math.round((n.getTime()-v.getTime())/1000.);m=0;h=0;
if(s<0){bx0.innerHTML='---';document.location='Waterput.php';}
else{if(s>59){m=Math.floor(s/60); s=s-m*60}
if(m>59){h=Math.floor(m/60);m=m-h*60}if(s<10){s='0'+s}
if(m<10){m='0'+m}bx0.innerHTML=' '+h+':'+m+':'+s+'';window.setTimeout('tbx0();',999);}}tbx0();
</script>
Minuten
<a href="index.php?mod=work&cancel=1&sh=465a7e36cd571c1848b525eda3be3246">Annuleren</a>

<script type='text/javascript'>var tickerArray = new Array();function doTicker(){
n=new Date();
for(i = 0; i < tickerArray.length; i++)
{
if(isNaN(document.getElementById(tickerArray["id"])))
{
var e = document.getElementById(tickerArray["id"]);
s=tickerArray["sek"];
m=0;
h=0;
if(s<0) e.innerHTML="---";
else
{
var timeTXT = s + " s";
if(s>59)
{
m=Math.floor(s/60);
s=s-m*60
timeTXT = m + " m";
}
if(m>59)
{
h=Math.floor(m/60);
m=m-h*60;
timeTXT = h + " h";
}

/*if(s<10) s="0"+s;
if(m<10) m="0"+m;

e.innerHTML=" ("+h+":"+m+":"+s+") ";*/
if(e.innerHTML != timeTXT) e.innerHTML = timeTXT;
tickerArray["sek"]--;
}
}
}
window.setTimeout("doTicker();",999);
}doTicker();</script>
<!-- content end -->



</body>
</html>

of bekijk resultaat: Timer op rpgs.nl

Nu hoorde ik dat ik het met Ajax zou moeten kunnen maar daar heb ik totaal geen verstand van.
 
als je in JS wil blijven werken dan zou je mss met Cookies kunnen werken... overgebleven tijd opslaan in een cookie en ophalen wanneer nodig.

en anders is ajax indd de oplossing, maar daar heb ik ook nog niet veel verstand van...
 
Vraag is niet opgelost maar een programmeur heeft voorgesteld om het te doen.
Status - Opgelost
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan