Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [Java][PHP]Zegarek
cdhexx
post 30.11.2009, 23:30:34
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Witam,
mam pytanie czy jest możliwość zrobienia zegarka, który normalnie działa jak systemowy zegarek czyli odlicza sekundy, minuty, godziny, ale nie potrzebuje do tego naszego zegarka systemowego bo date ciągnie z serwera. Chciałbym przez to osiągnąc zegarek, który ma gdzieś urzytkownika i jego komputer bo potrzebuje do swojego działania tylko serwer smile.gif

Liczę na pomoc smile.gif

Z góry dziękuję i pozdrawiam,
Bartek.
Go to the top of the page
+Quote Post
Kszyhuu
post 1.12.2009, 00:00:37
Post #2





Grupa: Zarejestrowani
Postów: 157
Pomógł: 32
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Weź zwykły zegarek z JS:
  1. <script language="javascript">
  2. var timerID = null;
  3. var timerRunning = false;
  4. function stopclock()
  5. {
  6. if(timerRunning)
  7. clearTimeout(timerID)
  8. timerRunning = false;
  9. }
  10.  
  11. function startclock()
  12. {
  13. stopclock();
  14. showtime();
  15. }
  16.  
  17. function showtime()
  18. {
  19. var now = new Date();
  20. var hours = now.getHours();
  21. var minutes = now.getMinutes();
  22. var seconds = now.getSeconds();
  23. var timeValue = "" + ((hours > 12) ? hours - 12 : hours);
  24. timeValue += ((minutes < 10) ? ":0" : ":") + minutes;
  25. timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
  26. timeValue += (hours >= 12) ? " P.M." : " A.M.";
  27. document.clock.face.value = timeValue;
  28. timerID = setTimeout("showtime()",1000);
  29. timerRunning = true;
  30. }
  31.  
  32.  
  33. <form name="clock" onSubmit="0">
  34. <input type="text" name="face" size="24">
  35. </form>
  36.  
  37. <script>startclock();</script>

Później liczysz różnicę miedzy serwerem (echo) a klientem (now.Get*). Następnie odczytujesz przez JS czas u klienta i korygujesz wcześniej obliczoną różnicą.
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 00:09:05
Post #3





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


o.O No raczej tego nie zrobie tongue.gif Mam takie skrypty java, ale one działają tylko z komputerem... Gdybym wiedział jak to zrobić to bym tutaj nie pisał. Dziękuję za chęć wykazania pomocy, jednak jak mówiłem nie zrobie tego ponieważ nie jestem dobry w Javie :/

Ten post edytował cdhexx 1.12.2009, 00:13:23
Go to the top of the page
+Quote Post
maxil
post 1.12.2009, 00:49:40
Post #4





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


masz przerób to sobie:

  1. <HEAD>
  2. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
  3. <script LANGUAGE= "JavaScript" type= "text/javascript">
  4. <!-- Ukrycie przed przeglądarkami nie obsługującymi JavaScriptów
  5. var timerID = null
  6. function wyswietlCzas()
  7. {
  8. var data = new Date();
  9. var godziny = data.getHours();
  10. var minuty = data.getMinutes();
  11. var sekundy = data.getSeconds();
  12. var czas = godziny;
  13. czas += ((minuty < 10) ? ":0" : ":") + minuty;
  14. czas += ((sekundy < 10) ? ":0" : ":") + sekundy;
  15. czas = "<B>" + czas + "</B>"
  16. document.getElementById("zegarLayer").innerHTML = czas;
  17. timerID = setTimeout("wyswietlCzas()",1000);
  18. }
  19. // Koniec kodu JavaScript -->
  20. </SCRIPT>
  21. </HEAD>
  22. <BODY onLoad="wyswietlCzas()">
  23. <DIV
  24. ID="zegarLayer"
  25. STYLE="
  26. visibility: visible;
  27. color: red;
  28. position: absolute;
  29. top: 20;
  30. left: 20;"
  31. >
  32. </DIV>
  33. Tutaj znajduje się treść strony
  34. </BODY>
  35. </HTML>


zegarek odlicza czas na warstwie div a nie w polu input i powinien działać zgodnie z czasem serwera
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 08:36:47
Post #5





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


No niestety... kolejny skrypt, który ciągnie godzinę z mojego komputera sad.gif Ale także dziękuję za chęć pomocy. Może ktos inny powie jak to zrobić? sad.gif
Go to the top of the page
+Quote Post
maxil
post 1.12.2009, 11:12:07
Post #6





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


Cytat(cdhexx @ 1.12.2009, 08:36:47 ) *
No niestety... kolejny skrypt, który ciągnie godzinę z mojego komputera sad.gif Ale także dziękuję za chęć pomocy. Może ktos inny powie jak to zrobić? sad.gif


a skąd wiesz że cięgnie dane z twojego komputera?
a jak przestawisz zegarek na komputerze to na stronie też się zmienia?
Go to the top of the page
+Quote Post
skowron-line
post 1.12.2009, 11:13:03
Post #7





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


[JAVASCRIPT] pobierz, plaintext
  1. <body onload="nakrec_zegar( "<?php echo date( 'd.m.Y H:i:s' ); ?>" );">
[JAVASCRIPT] pobierz, plaintext

tak sobie przekazujesz czas serwera do skryptu JS a w nim już sobie obrabiasz date i czas.
a później Date() jedziemy z koksem.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 12:55:29
Post #8





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Skąd wiem? A z tąd iż wgrałem skrypt na swój serwer i zmieniałem godzine na moim komputerze smile.gif Co do propozycji pana z ostatniego postu to już mam zupełny mętlik :/
Go to the top of the page
+Quote Post
skowron-line
post 1.12.2009, 13:15:30
Post #9





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(cdhexx @ 1.12.2009, 12:55:29 ) *
Skąd wiem? A z tąd iż wgrałem skrypt na swój serwer i zmieniałem godzine na moim komputerze smile.gif Co do propozycji pana z ostatniego postu to już mam zupełny mętlik :/


To jak już się na pan zwracamy do siebie to drogi panie. PHP działa po stronie serwera czyli pobiera czas z serwera, JS działa po stronie przeglądarki i pobiera sobie czas z lokalnej maszyny. w moim poście chodzi o podanie do funkcji wyświetlającej zegar parametrów daty i czasu poprzez php.

Oczywiście jeżeli będziesz sobie testował to na localhoscie to oczywiście nie wypali bo twój komputer jest serwerem.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 18:23:52
Post #10





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Ok jednak widzę, że jak sama nazwa wskazuję jest to "przedszkole". Trudno, że nikt mi nie pomógł osiągnąć taki efekt jaki oczekiwałem.
Pozdarawiam.
Go to the top of the page
+Quote Post
Quantum
post 1.12.2009, 18:52:23
Post #11





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


przecież skowron-line, podał Ci na tacy co musisz zrobić, żeby osiągnąć zamierzony efekt. Z czym masz problem ? Wystarczy, że zajrzysz na w3schools z linku z tego posta i znajdziesz tylko odpowiednie metody, którymi zmienisz pobrany z twego PC czas na ten z serwera.

Ten post edytował sniffer32 1.12.2009, 18:53:08
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 19:22:54
Post #12





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Ja nie wiem jak za to się zabrać. Pisałem przecież, że nie umiem Javy ;/ Dlatego takie pisanie... zrób to, zrób tam to nic mi nie daje ;/
Go to the top of the page
+Quote Post
Spirit86
post 1.12.2009, 19:33:11
Post #13





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(cdhexx @ 1.12.2009, 19:22:54 ) *
Ja nie wiem jak za to się zabrać. Pisałem przecież, że nie umiem Javy ;/ Dlatego takie pisanie... zrób to, zrób tam to nic mi nie daje ;/


po pierwsze to jest javascript po drugie, to myślisz, że ktoś Ci tu gotowca napisze, żebyś mógł sobie to podpiąć, no może lepiej, żebyś mógł to sprzedać dalej? ;>


--------------------
Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ.
Go to the top of the page
+Quote Post
cdhexx
post 1.12.2009, 19:45:55
Post #14





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Hm, nie wiem skoro takie zdanie masz o kimś kogo nie znasz to proszę lepiej zastanowić się nad sobą, bo zazwyczaj zdanie o innych nabywa się analizując swoje zachowanie smile.gif

Koniec off topu.

Pozdrawiam.
Go to the top of the page
+Quote Post
maxil
post 1.12.2009, 19:59:43
Post #15





Grupa: Zarejestrowani
Postów: 212
Pomógł: 11
Dołączył: 8.11.2008
Skąd: Sieradz

Ostrzeżenie: (10%)
X----


Cytat(cdhexx @ 1.12.2009, 18:23:52 ) *
Ok jednak widzę, że jak sama nazwa wskazuję jest to "przedszkole". Trudno, że nikt mi nie pomógł osiągnąć taki efekt jaki oczekiwałem.
Pozdarawiam.


że forum nazywa się przedszkole to nie znaczy że, ktoś będzie za ciebie skrypt pisał. My tylko pomagamy ci napisać.
Miałeś jasno opisane jak to zrobić, ale jak już nie skorzystałeś to już twój problem
Go to the top of the page
+Quote Post
cdhexx
post 2.12.2009, 00:24:53
Post #16





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


No, ale kiedy zedytuje ten kodzik i dodam np: <?php echo date( 'i' ); ?> to mi się nie kręcą minuty ;/
Go to the top of the page
+Quote Post
skowron-line
post 2.12.2009, 11:56:04
Post #17





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(cdhexx @ 2.12.2009, 00:24:53 ) *
No, ale kiedy zedytuje ten kodzik i dodam np: <?php echo date( 'i' ); ?> to mi się nie kręcą minuty ;/


No i już prawie jesteśmy w domu. Kolegom chodzi o to że nie pokazujesz do czego sam doszedłeś, pokaż kawałek kodu a napewno ktoś napisze w której linii i co trzeba zmienić aby wszystko działało tak jako sobie to wyśniłeś. A to że nie umiesz javascriptu nie znaczy że przy pisaniu tego skryptu nie możesz się podszkolić.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
thomson89
post 2.12.2009, 13:40:38
Post #18





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


a plik zapisałeś z rozszerzeniem .php?
odpalasz go na kompie poprzez serwer obsługujący php / jest na serwerze obsługującym php?

Ten post edytował thomson89 2.12.2009, 13:41:21


--------------------
Sklep 70%
Go to the top of the page
+Quote Post
cdhexx
post 3.12.2009, 11:17:14
Post #19





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 30.11.2009

Ostrzeżenie: (0%)
-----


Hm oto część kodu:
  1. <script LANGUAGE= "JavaScript" type= "text/javascript">
  2. <!-- Ukrycie przed przeglądarkami nie obsługującymi JavaScriptów
  3. var timerID = null
  4. function wyswietlCzas()
  5. {
  6. var data = new Date();
  7. var godziny = data.getHours();
  8. var minuty = data.getMinutes( "<?php echo date( 'i' ); ?>" );
  9. var sekundy = data.getSeconds();
  10. var czas = godziny;
  11. czas += ((minuty < 10) ? ":0" : ":") + minuty;
  12. czas += ((sekundy < 10) ? ":0" : ":") + sekundy;
  13. czas = "<B>" + czas + "</B>"
  14. document.getElementById("zegarLayer").innerHTML = czas;
  15. timerID = setTimeout("wyswietlCzas()",1000);
  16. }
  17. // Koniec kodu JavaScript -->
  18. </SCRIPT>


Zapisywałem na serwerze, no działa poprawnie tzn. minuty bo reszte dorobie analogicznie później. Tylko teraz zegarek stoi w miejscu, a dokładniej minuty sad.gif
Go to the top of the page
+Quote Post
zegarek84
post 3.12.2009, 14:16:44
Post #20





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

Ostrzeżenie: (0%)
-----


luknij na to - obliczone przesunięcie czasu w milisekundach i wg. tego wyświetlony czas z wartości zegara lokalnego - nie sprawdzałem czy się nie pomyliłem ale już nieraz robiłem podobny myk jeśli komuś w useurscript pisałem jakieś mini boty na szybko do gier:
[JAVASCRIPT] pobierz, plaintext
  1. var timerID = null , dif = (new Date(<?php echo floor(microtime(true)*1000);?>)).getTime() - (new Date()).getTime();
  2. function wyswietlCzas()
  3. {
  4. var data = new Date((new Date()).getTime() + dif);
  5. var godziny = data.getHours();
  6. var minuty = data.getMinutes();
  7. var sekundy = data.getSeconds();
  8. var czas = godziny;
  9. czas += ((minuty < 10) ? ":0" : ":") + minuty;
  10. czas += ((sekundy < 10) ? ":0" : ":") + sekundy;
  11. czas = "<B>" + czas + "</B>"
  12. document.getElementById("zegarLayer").innerHTML = czas;
  13. timerID = setTimeout("wyswietlCzas()",1000); /* ps. w js mało piszę ale skoro parametrów nie przekazujesz to o ile dobrze pamiętam wystarczyło setTimeout(wyswietlCzas,1000) ;) */
  14. }
[JAVASCRIPT] pobierz, plaintext


Ten post edytował zegarek84 3.12.2009, 14:17:32


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 11:24