Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 20 Pomógł: 1 Dołączył: 9.04.2008 Ostrzeżenie: (0%)
|
Witam wszystkich,
pytanie moje dotyczy pobierania z bazy danych daty. W bazie mysql istnieje kolumna typu Date w formacie 0000-00-00. Pobierając z niej datę i konwertując poprzez date("d-m-Y", strtotime($rekord[4])) dla dat starszych niż 1900-01-01 otrzymuję wynik 1970-01-01. Rozwiązanie przy użyciu mysql DATE_FORMAT nie wchodzi w grę. P.S. Google i wyszukiwarka już sprawdzone, nie znajduję tego co mi jest potrzebne. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 30 Dołączył: 19.02.2011 Skąd: Warszawa Ostrzeżenie: (0%)
|
Nie używaj funkcji strtotime, bo ona daje w wyniku tzw. UNIX timestamp, a więc obsługuje daty z epoki UNIX'a.
Właściwie to dziwi mnie, że "głupieje" dopiero przy datach przed 1900 r., bo powinna "zgłupieć" już przy dacie sprzed 1970 r. Do sformatowania daty korzystaj z funkcji MySQL. Zobacz stronę: http://dev.mysql.com/doc/refman/5.1/en/dat...-functions.html a na niej funkcję DATE_FORMAT(). MySQL obsługuje daty od 1000 r., więc z datami przed 1900 nie powinno być problemu. Uwaga: W ten sposób dostajesz datę jako string, ale w takim formatowaniu jak chciałeś i ew. sortowanie wg takiego stringu będzie nie w porządku kalendarzowym. Jeżeli chcesz, aby ta data była także kluczem sortowania, to prawdopodobnie: - na liście SELECT trzeba ująć kolumnę daty bez żadnej funkcji, - zrobić sort po tej "nieprzetworzonej" dacie. |
|
|
|
derecyori [MySQL][PHP]Pobieranie daty z bazy danych 27.03.2011, 13:03:23
darko Dlaczego konwertujesz format YYYY-MM-DD na d-m-y ?... 27.03.2011, 13:06:14
derecyori [PHP] pobierz, plaintext $wynik = mysql_query ... 27.03.2011, 13:19:09
darko echo date('d-m-Y', strtotime('2011-03-... 27.03.2011, 13:33:48
derecyori Do Darko:
- $rekord[4] zawiera datę, w tym k... 27.03.2011, 14:39:19
Valdi_B Na początek - jak sformatować datę:
Datę z bazy da... 27.03.2011, 15:35:19
derecyori Do Valdi_B:
- co do bazy danych to, że obciążam ... 27.03.2011, 15:51:25
darko Ok zapomnieliśmy o ograniczeniach timestampów, spr... 27.03.2011, 17:09:56
SUICIDE Witam.
Przyłączę się do tematu.
W bazie mam 2 kol... 12.04.2016, 21:44:38
nospor To ze ty w php sobie dodasz 30 dni do daty to chyb... 12.04.2016, 21:46:56
SUICIDE Nie nie. Spokojnie. Dalszej części kodu . Czyli wp... 12.04.2016, 21:55:43
nospor No to kurcze, chlopie,wyrazaj sie precyzyjnie... J... 12.04.2016, 21:58:36
SUICIDE Dobrze będę starał się być bardziej szczegółowy i ... 12.04.2016, 22:02:20
nospor Kurcze.... Ale pokaz caly kod... skad mamy wiedzie... 12.04.2016, 22:03:35
SUICIDE [PHP] pobierz, plaintext $query = "SELECT * F... 12.04.2016, 22:06:00
com http://stackoverflow.com/a/2332688/4450917 nie pro... 12.04.2016, 22:07:47
nospor Pisalem ci juz,ze $data ma teraz postac sekun... 12.04.2016, 22:07:55
com nospor a wcale nie mówię że nie 12.04.2016, 22:22:57
SUICIDE [PHP] pobierz, plaintext $query = "SELECT * F... 13.04.2016, 17:58:58 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 06:34 |