Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP] Problem z aktualną godziną
Forum PHP.pl > Forum > Przedszkole
8_pasarzer_NOSTROMO
Witam

Mam problem z aktualną godziną pobraną z funkcji php date.

Mianowicie wygląda to tak. Sprawa pewnie prosta ale mi sie skończyły pomysły.

Plik zegar.js

  1. <script type="text/javascript">
  2. var roz = new Date().getTime()-(<?php echo date(U); ?>*1000);
  3. function zegar(){
  4. D = new Date();
  5. D.setTime(D.getTime()-roz);
  6. G = D.getHours();
  7. M = D.getMinutes(); M=M<10?'0'+M:M;
  8. S = D.getSeconds(); S=S<10?'0'+S:S;
  9. document.getElementById('czas').innerHTML=' '+ G + ':' + M + ':' + S;
  10. setTimeout('zegar()', 1000);
  11. }
  12. </script>



Plik index.php

  1. $czas=date('H:i:s');
  2.  
  3. include "zegar.js";
  4. <span id='czas'></span></font>";
  5. print"<script type='text/javascript'>zegar()</script>";


Godzina z kodu javascript z pliku zegar.js jest prawidłowa, nie jest to godzina z mojego komputera bo śpieszy powiedzmy o 2 minuty i pokazuje na żywo z sekundami.
Natomiast godzina pobrana z date jest cofnięta o 1 godzinę.

Dlaczego tak ? Zapisując coś do bazy biorę datę z funkcji date i zawsze jest godzina wstecz.

viking
A skonfigurowałeś strefę czasową?
https://prophp.pl/advice/show/23/o_czym_pow...onfiguracja_php
8_pasarzer_NOSTROMO
Kurcze nie wiem, bo nie jestem właścicielem serwera. Mam ino dostęp do folderów/plików na serwerze. Jak można to sprawdzić czy jest ustawiona ?
viking
To ustawiasz we własnym zakresie i wręcz powinieneś to zrobić przed dalszą pracą.
8_pasarzer_NOSTROMO
Podpowiesz gdzie sie to ustawia ? Czy katowanie będzie ?
nospor
Przesciez viking podal ci LINKA do arta gdzie masz to wszystko wyjasnione. Naprawde ciezko poswiecic te 1 minute by to przeczytac?!
8_pasarzer_NOSTROMO
przeczytałem całe, mam wkleić wszystko w index.php ?
czy w tylko

  1. ini_set('date.timezone', 'Europe/Warsaw');
  2. setlocale(LC_ALL, 'pl_PL.UTF8');

nospor
zeby to bylo po chinsku....

// ustawienia ogólne oraz sesji
....
// ustawienia związane ze strefą czasową i locale
....
// ustawienia kodowania znaków dla różnych rozszerzeń
....

Naprawde te naglowki wymagaja dodatkowych wyjasnien? Art wyjasnia, ze sa to ustawienia ktore warto miec. Ale jak chcesz miec tylko dla strefy czasowej to dodaj tylko strefe czasowa a reszte olej
8_pasarzer_NOSTROMO
Kurcze Janusz nie krzycz. Myślałem, że można ten wiersz dodać jakoś globalnie by nie wrzucać do każdego pliku (82712 sztuk) do php.ini czy coś w tym stylu.

  1. ini_set('date.timezone', 'Europe/Warsaw');
  2. setlocale(LC_ALL, 'pl_PL.UTF8');


Pytam bo mam dostęp do 4 serwerów (ta sama aplikacja zamontowana) i tylko w jednym ten problem występuje. Lublin może jest już w innej strefie z tego wynika - ściana wschód.
nospor
Jakbys raczyl przeczytac w koncu porzadnie ten art, to bys wiedzial, ze nie zalezy od lokalizacji ale od ustawien serwera i fantazji admina. Mozesz se miec serwer w Lublinie a strefe domyslnie bedzie ci pokazywal z Afryki.
Po drugie nie krzycze, tylko staram ci sie DELIKATNIE wytlumaczyc bys sie troche skupil
Po trzecie: jak sie pytasz czy masz wkleic wszystko w index.php czy tylko strefe to chyba logiczne ze pytasz o to co masz wkleic a nie gdzie, wiec teraz nie odwracaj kota ogonem Grazynko
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.