Uhr live laufen lassen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
button
code
date
denkfehler
fehler
frage
greifen
http
internet
loben
merken
minute
netz
problem
sekunde
server
stunden
uhr
unterschied
zeiger
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Für PHP sicherlich nicht, da PHP Serverseitig läuft.
Für sowas bietet sich Javascript oder Flash an. -
Geht auch über PHP, aber Clientseitig, sprich per JS macht das mehr Sinn, richtig.
Hatte hier: http://tibel.lima-city.de/countdown.html nen Countdown erstellt. Vielleicht kannst du dir ja aus dem Quelltext anregungen holen. Ziffernblatt und so weiter... ließe sich über Grafiken regeln, die dann eben bei entsprechender Zeit geladen werden. z.B. die Zeiger in einzelnen Grafiken und dann nach dem Motto if 12 Sekunden zeige sekzeiger12.gif.
Da könntest du aber Probleme mit Ladeziten bekommen unter Umständen...
Ansonsten gibt es im Internet denke ich viele fertige Uhren, einfach mal googlen und abgucken ;) -
jip, sowas is mit php nich möglich...
allerdings, da javascript halt clientseitig läuft, is auch ne frage der "aktualität" also mit JS allein ist keine serverzeit z.b. möglich. das müsstest dann schon über php die zeit an JS übergeben... ansonsten hat halt nur mit JS jeder die zeit dastehen, die er auch unten rechts in winsows sieht...
mfg -
eben ich brauche server-zeit.. Kan mir jemnd ein script geben?
der andere der cs geht nicht.. -
ja danke erst mal das problem ich kann gar kein js und so "fertig produkte" aus dem internet ... naja ich weiß nicht
-
http://de.php.net/time()
-
Hab da noch n altes script da..^^
<html> <head> <title>Uhr</title> <script language="javascript"> <!-- stunde = <? echo date("H"); ?>; minute = <? echo date("i"); ?>; sekunde = <? echo date("s"); ?>; function UpdateClock() { sekunde = sekunde+1; if(sekunde > 59) { minute = minute+1; sekunde = 0; if(minute > 59) { stunde = stunde+1; minute = 0; if(stunde > 23) { stunde = 0; } } } document.getElementById('uhrdiv').innerHTML = stunde+':'+minute+':'+sekunde; } window.setInterval("UpdateClock()", 1000); --> </script> <style> body { margin: 0; padding: 0; font: 85% arial, hevetica, sans-serif; text-align: center; color: #333; background-color: #D6D6D6; } a:link { color: #B52C07; } a:visited { color: #600; } a:hover, a:active { color: #fff; background-color: #B52C07; } #uhrdiv { margin: 1em auto; width: 200px; text-align: center; font: 150% calibri, arial, hevetica, sans-serif; background-color: #D6D6D6; border: 3px solid #fff; } #scripterror { position: 0 0; width:100%; height:20px; background-color: #990000; color: #fff; display:block; } </style> </head> <body> <noscript><a id="scripterror" onmouseover="document.getElementById('scripterror').style.backgroundColor = '#EE2222';" onmouseout="document.getElementById('scripterror').style.backgroundColor = '#990000';">Damit die Uhr sich selbst aktualisiert, musst du Javascript aktiviert haben!</div></noscript> <div id="uhrdiv"><? echo date("H:i:s");?></div> </body> </html>
Ist halt ein Javascript.. Aber mit der Serverzeit.. D.h. das PHP Script erstellt das Javascript so dass es mit ner bestimmten zeit anfängt..
Man könnte das ganze noch erweitern, und dann mit AJAX alle 5 sekunden die zeit nochmal genau aktualisieren, damit sie wieder genau stimmt.. Da müsste man dann die Zeit messen, die gebraucht wird um ein PHP script aufzurufen, welche die Ziet hergibt, und die gemessene zeit zu der übergebenen zeit hinzurechnen und blaa damit es wirklich komplett genau ist..
aber mein script müsste für deine zwecke komplett ausreichen! ;) -
meins sieht da sehr ähnlich aus :P
<html> <head> <title>Time</title> <script language="JavaScript"> function Uhr_anzeigen() { if (Zeit == 0) { Zeit = 1; stunden = "<?php echo date(H); ?>" minuten = "<?php echo date(i); ?>" sekunden = "<?php echo date(s); ?>" } else { if (sekunden == 59) { sekunden = "00"; if (minuten == 59) { minuten = "00"; if (stunden == 23) { stunden = "00"; } else { stunden++; } } else { minuten++; if (minuten < 10) { minuten = "0"+minuten; } } } else { sekunden++; if (sekunden < 10) { sekunden = "0"+sekunden; } } } document.uhr.zeit.value = stunden + ":" + minuten + ":" + sekunden timerid = setTimeout("Uhr_anzeigen()",1000) } </script> <form NAME="uhr"> <input TYPE="text" NAME="zeit" SIZE=25 VALUE ="" style="color:#FFCC77; background-color:transparent; border:double #CC3300 0px; font-family:Verdana; font-size: 15px; font-weight:bold; letter-spacing:2; position:absolute; top:25px; left:2px;"> </form> <SCRIPT LANGUAGE="JavaScript"> <!-- var Zeit = 0; Uhr_anzeigen(); //--> </SCRIPT> </head> </body> </html>
-
ho ;)
Wisst ihr, was ich interessant finde?
Ich habe eben mal beide Script hochgeladen :D
(Thx nebenbei gesagt - interessiere mich auch dafür ;) )
1) http://sincer.lima-city.de/uhr/index.php
2) http://sincer.lima-city.de/uhr/uhr2.php
//EDIT: Ah, sry... war mein Fehler ^^
Habe den Zurück Button verwendet, anstatt die URL neu einzugeben ;D
Aber sollte es dann nicht trotzdem alles neu laden? Und somit auch die Uhrzeit-Daten?
Somit hinfällig:
//EDIT ENDE
Lustig finde ich nur, dass bei beiden Seiten eine unterschiedliche (über 2 Min. unterschied!) Zeit steht...
Greifen nicht beide Scripte auf den Lima Server, und seine Zeiteinstellung zu?
Oder wie kommt es dazu? ^^
lg
Sincer
Beitrag geändert: 26.10.2008 17:31:34 von sincer -
Lustig finde ich nur, dass bei beiden Seiten eine unterschiedliche (über 2 Min. unterschied!) Zeit steht...
Greifen nicht beide Scripte auf den Lima Server, und seine Zeiteinstellung zu?
Oder wie kommt es dazu? ^^
Bei mir haben beide Uhren die exakt gleiche Zeit.
@bg-programmieren: Na welche beiden Skripte könnten DA wohl gemeint sein? -
also bei mir zeigen beide die selbe zeit an...
und diese unterscheidet sich auch von meiner systemzeit, somit sichergestellt, das es die serverzeit ist...
edit:
allerdings find ich bei meinem schöner, das bei sekunden und minuten <10 auch eine 0 davor gesetzt wird. bei den minuten weis ich nich, obs bei dem anderen fehlt, habs eben nur bei den sekunden gesehen...
mfg
Beitrag geändert: 26.10.2008 17:45:39 von ranglisten -
allerdings find ich bei meinem schöner, das bei sekunden und minuten <10 auch eine 0 davor gesetzt wird. bei den minuten weis ich nich, obs bei dem anderen fehlt, habs eben nur bei den sekunden gesehen...
Jop... das habe ich mir auchgedacht...
Da Steht nicht 17:52:8 sondern 17:52:08 -> Finde ich auch schöner, ist aber denke ich Geschmackssache ;)
Öhm... wegen dem Zeitunterschied - Bitte mein EDIT beachten!
Die Frage war, warum er die Zeit nicht neu vom Server erfragt, wenn ich den "Zurück" Button verwende?!
lg
Sincer -
Öhm... wegen dem Zeitunterschied - Bitte mein EDIT beachten!
Die Frage war, warum er die Zeit nicht neu vom Server erfragt, wenn ich den "Zurück" Button verwende?!
Sorry, aber DAS hab ich aus Deinem Edit jetzt wirklich nicht rausgelesen ;) Ich vermute mal, dass sich der Browser beim "Zurück"-Button die Seite einfach aus dem Cache holt und nicht neu vom Server anfordert - folglich hast Du da natürlich auch noch den alten Zeitwert. -
Der Unterscheid kommt davon, weil bei ranglistens Script die Minuten und Stunden zu früh hochgezählt werden... schon bei 59Sekunden/Minuten wird hochgezählt... aus dem == muss ein > gemacht werden
freaky -
und wenn man das mit dem zurück button lösen will, muss man, wie ich schon sagte, AJAX einsetzen
-
Der Unterscheid kommt davon, weil bei ranglistens Script die Minuten und Stunden zu früh hochgezählt werden... schon bei 59Sekunden/Minuten wird hochgezählt... aus dem == muss ein > gemacht werden
Öhm... das kann ich eig. nicht bestätigen...
Beide Scripte funktionieren Einwand frei, soweit ich das sehe oO
lg
Sincer -
Der Unterscheid kommt davon, weil bei ranglistens Script die Minuten und Stunden zu früh hochgezählt werden... schon bei 59Sekunden/Minuten wird hochgezählt... aus dem == muss ein > gemacht werden
freaky
hm... also entweder hab ich nen denkfehler drin, oder ich weis es nich.. wenn du dir die uhr anschaust, wie sie wie sie netterweise sincer in netz gestellt hat, und du dir die sekunden anschaust, wirst du merken, das er normal durchläuft
55 -> 56 -> 57 -> 58 -> 59 -> 00 -> 01 -> 02 -> usw...
weis nich, wo da der fehler sein soll?
mfg -
Der Unterscheid kommt davon, weil bei ranglistens Script die Minuten und Stunden zu früh hochgezählt werden... schon bei 59Sekunden/Minuten wird hochgezählt... aus dem == muss ein > gemacht werden
freaky
hm... also entweder hab ich nen denkfehler drin, oder ich weis es nich.. wenn du dir die uhr anschaust, wie sie wie sie netterweise sincer in netz gestellt hat, und du dir die sekunden anschaust, wirst du merken, das er normal durchläuft
55 -> 56 -> 57 -> 58 -> 59 -> 00 -> 01 -> 02 -> usw...
weis nich, wo da der fehler sein soll?
mfg
das er schon bei sekunde 59 hochzählt... also ne sekunde zu früh ;)
er müsste bei ==60 hochzählen oder halt bei >59
du müsstest das script neben dem anderen mal paar stunden laufen lassen dann würdest du den unterschied sehen, denn nach jeder minute ist er eine sekunde im vorraus
deine reihenfolge:
55 -> 56 -> 57 -> 58 -> 00 -> 01 -> 02 -> usw...
freaky
Beitrag geändert: 26.10.2008 20:12:44 von freaky -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage