konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Witam,
wiecie może jak zamienić czas pobrany z bazy danych (GMT) na czas użytkownika (systemu operacyjnego) - najlepiej w PHP??


Z góry dzięki za pomoc,
pozdrawiam Łukasz

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Kuuuubaaaaa, wooołaaaająąąąą =)

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Już przybywam z pomocą!

jeśli chodzi Ci o unixowy timestamp, to robisz po prostu

echo date('d-m-Y, H:i', $stamp);

:D

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

oki, ale skąd strona będzie wiedziała jaki czas ma ustawiony system operacyjny użytkownika?? bez tego nie przeliczy popranie czasu...

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Błagam Łukaszu - postaraj się lepiej precyzować swoje zapytania.

Najprawdopodobniej chodzi Ci o pobranie czasu komputera użytkownika, ale tego dokonać możesz tylko JavaScriptem. Następnie wynik takiego pobrania przekaż do skryptu PHP, i możesz z tym już robić co chcesz.

Dla mnie cały ten topic, to jakieś kuriozum.Kuba Świegot edytował(a) ten post dnia 04.10.08 o godzinie 00:45

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Łukaszu :) możesz sobie poradzić używając Javascript:


<script language="Javascript">
alert (new Date().getTimezoneOffset());
</script>


.. i tak jak napisał Kuba przekaż wynik działania metody "getTimezoneOffset" do PHP (możesz zapamiętać wynik np. w sesji użytkownika czy gdzie tam Ci wygodnie). Wynik zwracany jest w minutach.

Temat: Zamiana czasu z GMT na użytkownika

Bartłomiej Biskupek:
Wynik zwracany jest w minutach.

Ciekawe :-). Widział ktoś kiedyś strefę czasową UTC + 00:28 ? ;-)Wojciech Małota edytował(a) ten post dnia 04.10.08 o godzinie 13:40

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

Ciekawe :-). Widział ktoś kiedyś strefę czasową UTC + 00:28

No cóż - może nie UTC +28 minut, ale już np GMT -120 minut się znajdzie.

Odsyłam do dokumentacji tutaj.

Temat: Zamiana czasu z GMT na użytkownika

Bartłomiej Biskupek:
Ciekawe :-). Widział ktoś kiedyś strefę czasową UTC + 00:28

No cóż - może nie UTC +28 minut, ale już np GMT -120 minut się znajdzie.

Chodziło mi o to, że strefy czasowe zawsze różnią się pełnymi godzinami. 120 minut = 2 godziny. Dlatego trochę ciekawi mnie co za gość wpadł na to żeby odległość strefy czasowej od UTC zwracać w minutach. No ale z technicznego punktu widzenia to jeden pies :)

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

zrobiłem sobie coś takiego:
[code]
script language="JavaScript">
var zmienna = new Date().getTimezoneOffset();

var time = new Date();
var s = time.getSeconds();
var seconds = (s < 10) ? "0" + s : s;
var m = time.getMinutes() + 1;
var minutes = (m < 10) ? "0" + m : m;
var hh = time.getHours();
var hours = (hh < 10) ? '0' + hh : hh;
time = hours + ":" + minutes + ":" + seconds;
$.cookie('actualtimes', time, { expires: 365 });
$.cookie('timeszone', zmienna, { expires: 365 });
</script>

<?
echo"Aktualny czas: $_COOKIE[actualtimes] , strefa czasowa: $_COOKIE[timeszone] " ;
$wartosc_z_bazy = "2008-10-04 10:33:34";

[code]
W cookiesach mam aktualny czas na komputerze usera, i tą różnicę w minutach ($_COOKIE[actualtimes]).

Jak teraz z $wartosc_z_bazy zrobić właściwy czas?? (chyba trzeba +/- to z cookiesa)??

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

A dla mnie Twoje pytanie to ciągle kuriozum. Co data z bazy? Co ma z nią wspólnego data i czas użytkownika? Co Ty to chcesz podmienić czy ku~1 mać co? :)

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

oki, to jeszcze raz...;)
mam zmienną: $wartosc_z_bazy - jest to data zapisana w czasie GMT.
$_COOKIE[actualtimes] - aktualny czas użytkownika (czas systemowy)
$_COOKIE[timeszone] - różnicą minutowa pomiędzy czasem systemowym, a czasem GMT.

chciałbym teraz (mając te dane) zamienić czas ze zmiennej $wartosc_z_bazy na czas lokalny użytkownika...

czyli w przypadku Polski (czasu letniego) będzie to $wartosc_z_bazy + 2 godziny... chciałbym zrobić taki "automat", który będzie w locie dokonywał konwersji czasu z bazy, do czasu użytkownika...

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

no to zamień se tą datę z bazy na unixowy timestamp, dodaj 120*60 sekund i spowrotem zapisz do bazy w postaci daty.

gmmktime() się kłania.

:O?Kuba Świegot edytował(a) ten post dnia 04.10.08 o godzinie 15:53

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

$poprawny_czas =date( 'Y-m-d H:i:s', strtotime( $wartosc_z_bazy)- ($_COOKIE[timeszone])*60);

czy taki zapis będzie bezpieczny dla dodatnich/ujemnych/zerowych timezonow??

da się może jakoś łatwiej przekazać tą wartość -120 (to co mam teraz w cookie timezone) niż przez cookie do php - bo teraz muszę przeładować stronę żeby była możliwość obliczania, a fajnie by było gdyby dało się od razu:)

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

no w ajaxie panie.

w body OnLoad pobierasz czas z komputera uzytkownika, a zaraz po tym wywołanie ajaxowe coś z tym robi i jednocześnie aktualizuje InnerHTML w miejscu gdzie ma byc widoczny czas po obróbce.

no troche rusz szarymi man :)

konto usunięte

Temat: Zamiana czasu z GMT na użytkownika

a ja tam bym kazal juzerowi wybrac przy rejestracji i/lub modyfikacji konta, zeby sie okreslil w jakiej strefie czasowej chce mieszkac, ewentualnie sugerujac mu domyslny wybor metoda opisana powyzej.



Wyślij zaproszenie do