![]() ![]() |
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 (IMG:style_emoticons/default/smile.gif) Liczę na pomoc (IMG:style_emoticons/default/smile.gif) Z góry dziękuję i pozdrawiam, Bartek. |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 157 Pomógł: 32 Dołączył: 24.08.2009 Ostrzeżenie: (0%)
|
Weź zwykły zegarek z JS:
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ą. |
|
|
|
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 (IMG:style_emoticons/default/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 |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 212 Pomógł: 11 Dołączył: 8.11.2008 Skąd: Sieradz Ostrzeżenie: (10%)
|
masz przerób to sobie:
zegarek odlicza czas na warstwie div a nie w polu input i powinien działać zgodnie z czasem serwera |
|
|
|
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 (IMG:style_emoticons/default/sad.gif) Ale także dziękuję za chęć pomocy. Może ktos inny powie jak to zrobić? (IMG:style_emoticons/default/sad.gif)
|
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 212 Pomógł: 11 Dołączył: 8.11.2008 Skąd: Sieradz Ostrzeżenie: (10%)
|
No niestety... kolejny skrypt, który ciągnie godzinę z mojego komputera (IMG:style_emoticons/default/sad.gif) Ale także dziękuję za chęć pomocy. Może ktos inny powie jak to zrobić? (IMG:style_emoticons/default/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? |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%)
|
|
|
|
|
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 (IMG:style_emoticons/default/smile.gif) Co do propozycji pana z ostatniego postu to już mam zupełny mętlik :/
|
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa 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 (IMG:style_emoticons/default/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. |
|
|
|
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. |
|
|
|
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 |
|
|
|
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 ;/
|
|
|
|
Post
#13
|
|
|
Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław 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 ;/ 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? ;> |
|
|
|
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 (IMG:style_emoticons/default/smile.gif)
Koniec off topu. Pozdrawiam. |
|
|
|
Post
#15
|
|
|
Grupa: Zarejestrowani Postów: 212 Pomógł: 11 Dołączył: 8.11.2008 Skąd: Sieradz Ostrzeżenie: (10%)
|
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 |
|
|
|
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 ;/
|
|
|
|
Post
#17
|
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%)
|
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ć. |
|
|
|
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 |
|
|
|
Post
#19
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
Hm oto część kodu:
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 (IMG:style_emoticons/default/sad.gif) |
|
|
|
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:
Ten post edytował zegarek84 3.12.2009, 14:17:32 |
|
|
|
Post
#21
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
Wszystko, pięknie i ładnie ale nadal kożysta z zegarka systemowego no i wyświetla nieprawidłową godzinę:( Nie mam pojęcia co zrobić (IMG:style_emoticons/default/sad.gif)
|
|
|
|
Post
#22
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
nie zupełnie korzysta z zegarka systemowego ;p - i co do godziny to wyświetl sobie jeszcze godzinę czasu serwera - tak to jest jeśli nie uwzględnisz różnicy strefowej ;p/ czasu strefowego
luknij na algorytm jak to działa - czas z serwera przeliczony do milisekund i obliczona różnica w milisekundach z czasu lokalnego - potem w funkcji wyświetlającej czas jako parametr podaję liczbę milisekund jaka powinna być na serwerze: (new Date()).getTime() + dif gdzie (new Date()).getTime() to liczba milisekund czasu aktualnego - jakby nie było z tego co napisałeś wszystko działa ok - wyświetl sobie gdzieś statyczną datę i godzinę na serwerze i porównaj z tym zegarkiem - musisz dorzucić różnicę czasu strefowego JS zawsze korzysta z zegarka systemowego!!! - teraz kwestia przeliczenia tego czasu - jak już pisałem na serwerze masz inną godzinę niż w Warszawie ;p na początku skryptu php użyj funkcji:
...no i wyświetla nieprawidłową godzinę:( Nie mam pojęcia co zrobić (IMG:style_emoticons/default/sad.gif) wyświetla taką jaką chciałeś ;p - godzinę na serwerze ;p Ten post edytował zegarek84 3.12.2009, 14:50:53 |
|
|
|
Post
#23
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
No to sam kuknij http://lockerz-poland.com/1.php
Co odświeżenie wyświetla 1:00:00 i tak w kólko po odświeżeniu :/ A kiedy przesunke zegarek systemowy to godzina na stronie też się przesówa :/ Ten post edytował cdhexx 3.12.2009, 15:40:45 |
|
|
|
Post
#24
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
sorki - dzisiaj odwiedzam rodzinkę i jestem deczko "podchmielony" - którą wersję php masz?? poniżej 5??
Changelog/komentarz/uwaga zerknąłem w źródło i to co jest zwracane do Twojego skryptu nie odpowiada temu: <?php echo floor(microtime(true)*1000);?> - jak pomagałem nie testowałem skryptu js ale szybko to akurat sprawdziłem i zwracało poprawną wartość 13-to cyfrową... jak patrzę u Ciebie w źródla to wartość zwracana jest 3 cyfrowa tylko... jeśli urzywasz php w starszej wersji niż 5 to luknij w komentarze funkcji microtime a dokładniej: A hack for PHP < 5.0 - tyle, że użyj echo a nie print - powinno pomóc... zresztą dla pewności pokaż kod php i podaj wersję php gdyż w algorytmie js który podałem na szybko (był podany a deczko zmodyfikowałem (IMG:style_emoticons/default/winksmiley.jpg) ) nie widzę błędu... pozdro (IMG:style_emoticons/default/winksmiley.jpg) - sorki, że nie na pw i tak późno ale raz, że komuś może się to przydać, a 2 to byłem i jestem deczko zajęty (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
|
Post
#25
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
Kod jest identyczny jak mi podałeś. A co do wersji php to nie mam szczerze pojęcia. Ale hosting mam na webd.pl pakiet large :] Czyli co mam zrobić ?
P.S. Mam Wersja PHP 4.4.9 Ten post edytował cdhexx 3.12.2009, 20:44:16 |
|
|
|
Post
#26
|
|
|
Grupa: Zarejestrowani Postów: 450 Pomógł: 84 Dołączył: 27.11.2008 Skąd: Warszawa Ostrzeżenie: (0%)
|
sprawdź to. |
|
|
|
Post
#27
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
@cdhexx - pytałem się o zawartość pliku php - ja podałem "fragment" (niby całość ale nie wiem jak żeś to w php wplótł)... pozatym co do wersji php phpinfo...
@sniffer32 - podałeś identyczne rozwiązanie jak ja wyżej pomijając tylko milisekundy (gdzie to że je dałem trochu poprawia wynik zwłaszcza jak się pisze pseudo boty które mają klikać w idealnie policzonym czasie ;p) - czyli użyłeś tylko funkcji time zamiast microtime + dodatkowo drobny błąd w logice funkcji gdyż założę się, że po 15min co najmniej a już na pewno po 30min na stronie czas będzie inny niż serwerowy mimo wykonywania funkcji co sekundę i dodawania sekundy do ogólnego czasu (dochodzą jeszcze różne opóźnienia powodujące późniejsze wykonanie funkcji (minimalnie ale jednak ;p) - a mając jako wzorzec zegar systemowy + różnicę ma się lepszy wzorzec czasu (IMG:style_emoticons/default/winksmiley.jpg) - co do tego wzorca to taki mały przykład jak np. grając dawniej w pewną gierkę nie miałem dokładnie czasu milisekund a były one niestety potrzebne do pewnych operacji, godzina była na stronie podawana co prawda ale z dokładnością do sekund niestety... w dodatku czasem dochodziły opóźnienia wczytania strony (co tez mogło się zdarzyć przy kliknięciu automatycznym z poziomu pseudo bota ale czas trzeba było minimalizować a nie można było od kliknąć za w czasu) - więc ustawiało się na skrypcie różnicę "doświadczalnie" i wzorzec był już idealny - niestety w tej gierce na serwie była też przerwa w godzinach najczęściej od 4:30 do 5:00 i czasy nieznacznie się różniły więc "wzorzec" trzeba było ustawiać co dzień - oczywiście też wykorzystywało się tą przerwę licząc czasy ataków tak, by wróg jeśli coś poważnego miał robić miał to właśnie zrobić w czasie przerwy serwera (czyli gdy nic nie mógł zrobić ^^) - w ten sposób można było toczyć walki z "mocnymi" zawodnikami w okolicy oddalonymi nawet o 25h drogi ^^ - a mnie lame zawsze interesowały wiochy co mają najwięcej pkt w okolicy (niestety zawsze grałem krótko z braku czasu ;/) Ten post edytował zegarek84 3.12.2009, 23:25:37 |
|
|
|
Post
#28
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
Skopiowałem identycznie jak jest i wyświetla takie coś http://www.lockerz-poland.com/1.php
|
|
|
|
Post
#29
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
człowieku - zacznij kopiować z głową - rozwiązanie już dawno w sumie miałeś na tacy... (IMG:http://img-upload.pl/images/827_q.gif)
ok - wklej poniższą zawartość bez myślenia tym razem a dopiero pomyślisz jak będziesz chciał zaimplementować:
ps. zamiast zdefiniowanej funkcji militime w php możesz użyć/zastąpić ją przez time()*1000 Ten post edytował zegarek84 4.12.2009, 01:18:41 |
|
|
|
Post
#30
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
Wielkie dzięki (IMG:style_emoticons/default/smile.gif) Wszystko działa jak trzeba (IMG:style_emoticons/default/smile.gif)
Jeszcze jedno, a co bym musiał z edytować aby wyświetlało czas w AM i PM bo chce wprowadzić jeszcze drugi zegarek wyświetlający godzinę w USA? Mniej więcej tak to u mnie wygląda jak odejmę te 6 godzin http://www.lockerz-poland.com/time.php Ten post edytował cdhexx 4.12.2009, 01:59:06 |
|
|
|
Post
#31
|
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%)
|
trochu to teraz "dziwnie" wygląda (IMG:http://img-upload.pl/images/402_a.gif) [ujemna godzina (IMG:http://img-upload.pl/images/553_x.gif) ]
luknij w kodzie na: (new Date()).getTime() + $dif - poszukaj gdzie to jest - tutaj masz obliczoną liczbę milisekund od "since the Unix Epoch (January 1 1970 00:00:00 GMT)" - tak więc dla Polski teraz masz poprawną wartość - jeśli Polska jest punktem odniesienia to rozumowanie Twoje idzie w dobrym kierunku ale.... aby to uporządkować policz tą wartość dla Polski $pl = (new Date()).getTime() + $dif; no i od tego odejmij te 6h - ale pomyśl jak ;p - pisałem , że tamto jest w milisekundach - więc: $en = $pl - 6*60*60*1000; no a teraz pasowało by mieć 2 różne daty czyli: $data_pl = new Date($pl); $data_en = new Date($en); i analogicznie z godzinami itd... $godzina_pl... $godzina_en... co do wyświetlania AM i PM sprawdzasz czy godziny >12 czy nie i jak pm to odejmujesz te 12 od wartości wyświetlanej godziny (IMG:http://img-upload.pl/images/959_e.gif) ... lub jeszcze inaczej można puszczać funkcję z dodatkowym parametrem na przesunięcie i samo by liczyło - ale spróbuj pomyśleć trochu i przerobić to co masz - prędzej się nauczysz - już gotowca dostałeś i teraz dostosować go tylko musisz... ...co prawda mógłbym napisać gotową funkcję ale nie od tego jest to forum żeby dawać gotowce - na tym forum pomagamy - powyższy "gotowiec" otrzymałeś choć wszystko wcześniej napisalem jak na tacy co i do czego ale też pisałem, że musisz już sam cały kod dostosować... pozdro (IMG:http://img-upload.pl/images/170_l.gif) Ten post edytował zegarek84 4.12.2009, 02:25:21 |
|
|
|
Post
#32
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 0 Dołączył: 30.11.2009 Ostrzeżenie: (0%)
|
OKi zrobiłem te przesunięcie czasu o sześć godzin w tył http://www.lockerz-poland.com/time.php ale nadal jest problem z wykonaniem tego AM i PM, bo to nie tylko musi wyświetlać AM i PM ale zamienić czas na format amerykański czyli dwunastogodzinny. Próbowałem użyć warunku ale coś mi nie wyszło (IMG:style_emoticons/default/sad.gif) Jakieś wskazówki ?
P.S. jeszcze jedno ponieważ iż forum MyBB nie obsługuje php (jeżeli chodzi o edycje skryptu przez panel administracyjny), a chciałem zamieścić tam mój skrypt. Jest jakaś możliwość umieszczenia tam tego skryptu pomijając rameczki? OK z godziną sobie poradziłem x) Teraz tylko to pytanie z P.S.'a proszę o szybką odpowiedź bo chce już skrypt umieścić (IMG:style_emoticons/default/smile.gif) OK temat zamknięty już wszystko zrobiłem (IMG:style_emoticons/default/smile.gif) Dziękuję za pomoc i pozdrawiam serdecznie (IMG:style_emoticons/default/smile.gif) Ten post edytował cdhexx 5.12.2009, 00:32:02 |
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 20:38 |