Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: formatowanie daty w tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
camelx
witam
mam pytanie - czy da się zmienić format daty w MySQL'u w tabelach np. DATE, czy DATETIME tak aby była wyświetlana w formacie np. 28.06.2004 12.13.25 questionmark.gif
kicaj
Tak.
Poszukaj na forum, sam w tym temacie pisalem smile.gif
czachor
szukaj pod hasłem DATE_FORMAT - ew. zajrzyj do manuala MySQL: http://dev.mysql.com/doc/
camelx
no dobra, już mniej więcj wiem o co chodzi. Ale czy ja mam to zapytanie (SELECT...itd.) dodać do kryptu php? bo jak to w bazie robię, to to się jakby nie zapisuje, tzn. na stronie się nie wyświetla w takim formacie jak chce (i w bazie z resztą też tiredsmiley.gif )
czachor
Widocznie coś robisz nie tak...
  1. SELECT DATE_FORMAT(pole_z_data,'%e.%m.%Y') AS DATA FROM tabela

teraz datę masz w zmiennej (albo elemencie tablicy, zależy jak to robisz) $data:
  1. <?php
  2. echo $data; // 12.04.2004 
  3. ?>
camelx
no, wreszcie sobie poradziłem winksmiley.jpg

Ale mam problem bo nie mogę wyświetlić godziny...

Mam taki kod:
  1. SELECT DATE_FORMAT(pole_z_data, '%d.%m.%Y %H.%i.%s') AS DATA FROM tabela

Może trzeba zmienić typ pola questionmark.gif jeśli tak to na jaki
FiDO
Pole DATE przechowuje tylko i wylacznie date, wiec musisz uzyc DATETIME, zeby miec tez godzine (oczywiscie przy dodawaniu danych musisz tez ta godzine podawac).
camelx
ale jak mam ją podawać, przecież data wstawia się sama, to czemu godzinę trzeba podawać questionmark.gif
czachor
Powtórzę po @FiDO: zamiast pola DATE musisz użyć DATETIME - tam będziesz miał automatycznie godzinę. DATE nie przechowuje godziny (jak sama nazwa wskazuje smile.gif)
camelx
Dobra, dzięki.
A teraz coś trudniejszego - czy da się wyświetlać nazwy miesięcy po polsku zamiast cyferek ? smile.gif
sztosz
Da się to zrobic ale nie jestem pewien jak. Mozna napisac sobie mały skrypcik a potem dodać tam gdzie chcesz go wyswietlić albo zaincludować.
camelx
no właśnie, trzeba napisać skrypcik...
Ja mam coś takiego:
  1. <?php
  2. $sciezka=&#092;"imieniny/\";
  3. //---------------------------------------------------------------------------------------------------------------
  4.  
  5. $datam = date(&#092;"m\"); 
  6. $datad = date(&#092;"d\");
  7. $d=&#092;"$datad\";
  8. $m=&#092;"$datam\";
  9. //---------------------------------------------------------------------------------------------------------------
  10. $month = array(0,Styczeń,Luty,Marzec,Kwiecień,Maj,Czerwiec,Lipiec,Sierpień,Wrzesień,PaĽdziernik,Listopad,Grudzień);
  11. //---------------------------------------------------------------------------------------------------------------
  12. $d = str_replace(&#092;"01\",\"1\",$d);
  13. $d = str_replace(&#092;"02\",\"2\",$d);
  14. $d = str_replace(&#092;"03\",\"3\",$d);
  15. $d = str_replace(&#092;"04\",\"4\",$d);
  16. $d = str_replace(&#092;"05\",\"5\",$d);
  17. $d = str_replace(&#092;"06\",\"6\",$d);
  18. $d = str_replace(&#092;"07\",\"7\",$d);
  19. $d = str_replace(&#092;"08\",\"8\",$d);
  20. $d = str_replace(&#092;"09\",\"9\",$d);
  21. $m = str_replace(&#092;"01\",\"1\",$m);
  22. $m = str_replace(&#092;"02\",\"2\",$m);
  23. $m = str_replace(&#092;"03\",\"3\",$m);
  24. $m = str_replace(&#092;"04\",\"4\",$m);
  25. $m = str_replace(&#092;"05\",\"5\",$m);
  26. $m = str_replace(&#092;"06\",\"6\",$m);
  27. $m = str_replace(&#092;"07\",\"7\",$m);
  28. $m = str_replace(&#092;"08\",\"8\",$m);
  29. $m = str_replace(&#092;"09\",\"9\",$m);
  30.  
  31. $imie=file(&#092;"$sciezka$m.inc\");
  32. ?>

Myślę, że on by się przydał, ale nie wiem jak go wykorzystać do tego celu.

Może da się to zrobić w bazie (a potem tylko skrypt php zmieni miesiące na język polski) questionmark.gif
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-2025 Invision Power Services, Inc.