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.
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.