Avatar billede jammerlab Nybegynder
30. december 2003 - 01:11 Der er 9 kommentarer og
1 løsning

Realtime i PHP - hvordan?

Jeg har set flere steder et realtime ur osv. tænkte bare på hvor dette er lavet? Om det er noget js scripting og php? Vil gerne se nogle eksempler hvis i ligger inde med nogen.
Avatar billede fangel Nybegynder
30. december 2003 - 01:15 #1
ja - du kan, med PHP finde ud af tid siden unix epoch, og få JS til at tælle videre derfra... det har været oppe mange gange, bare søg på E...

Morten
Avatar billede jammerlab Nybegynder
30. december 2003 - 01:29 #2
har søgt... kunne ikke finde det... search string? :)
Avatar billede fangel Nybegynder
30. december 2003 - 01:34 #3
følgende script er skrevet af roenving til spørgsmålet
http://www.eksperten.dk/spm/432381

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>ur_alm</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
var delta = new Date(<?echo time();?>).getTime() - new Date().getTime();

function show2(){
if (!document.all&&!document.getElementById)
return
thelement=document.getElementById? document.getElementById("tick2"): document.all.tick2
var Digital = new Date(new Date().getTime() + delta);
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var dn=""
if (hours < 24)
dn=""
if (hours > 24)
hours=hours-24
if (hours==0)
hours=24
if (minutes <= 9)
minutes="0"+minutes
var ctime=hours+":"+minutes+" "+dn
thelement.innerHTML="<em></em>"+ctime+"<em></em>"
setTimeout("show2()",20000)
}
window.onload=show2;
</script>
</head>
<body>
<span id="tick2"></span>
</body>
</html>

Morten
Avatar billede jammerlab Nybegynder
30. december 2003 - 01:41 #4
hehe fungerede det så? For jeg kører det og der sker intet :)
Avatar billede jammerlab Nybegynder
30. december 2003 - 01:41 #5
altså andet end den viser tiden den er ikke realtime... eller ... doh den fungere jow :D
Avatar billede jammerlab Nybegynder
30. december 2003 - 01:45 #6
Men det ser jo ud til man skal være lidt af en haj for at kunne lave noget selv. :/
Avatar billede ducks Nybegynder
30. december 2003 - 01:50 #7
Sådan ser det altid ud indtil man har forstået hvordan det fungerer :- )
Avatar billede fangel Nybegynder
30. december 2003 - 02:18 #8
mig og javascript er som elefanter og cykler, men her kommer en forklaring:

var delta = new Date(<?echo time();?>).getTime() - new Date().getTime();

udregner forskellen mellem serverens tid og computerens tid... dette bruges af computeren til at vise serverens tid, da den bare tager computerens tid + forskellen

var Digital = new Date(new Date().getTime() + delta);
var hours=Digital.getHours()
var minutes=Digital.getMinutes()

finder klokken nu ud fra computerens tid + forskel, og bruger den til at finde klokkeslet

if (hours < 24)
dn=""
if (hours > 24)
hours=hours-24
if (hours==0)
hours=24
if (minutes <= 9)
minutes="0"+minutes

laver lidt tjek-op på variablerne for at sikre sig det altid er på formen HH:MM

var ctime=hours+":"+minutes+" "+dn
thelement.innerHTML="<em></em>"+ctime+"<em></em>"

sammensætter uret og viser det i html-taget med id "tick2" (det bliver bundet øverst i funktionen)

setTimeout("show2()",20000)

kalder funktionen igen efter 20 sek... derfor uret går (dog langsomt, men det kan moddes til at gå hvert sekundt)

Morten
Avatar billede jammerlab Nybegynder
30. december 2003 - 03:45 #9
yep... var stort ste med på det... mere hvis jeg selv skulle lave noget lignende som kunne noget helt andet :) Men jeg takker med den hjælp jeg har fået pt. smid du et svar :=)
Avatar billede fangel Nybegynder
30. december 2003 - 14:44 #10
svaa'r

Morten
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