Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][mysql] Format daty - jaki wybrać?
mk321
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 28.06.2009

Ostrzeżenie: (0%)
-----


Tworzę stronę (newsy, głosowanie itd) i nie jestem pewny jaki wybrać format daty.
Datę będę zapisywał w bazie MySQL, będę według niej sortował. Chcę dobrze wybrać by później nie mieć z tym problemów (czytałem, że przy przenoszeniu bazy są problemy z formatem daty).
Oczywiście dla użytkownika format daty musi być w miarę normalny do odczytania.

Wydaje się na początku naturalne:
  1. date("d.m.Y H:i:s")
Cytat
08.10.2010 16:52:04
Ale spacja w środku, do tego rok w środku... Da się to posortować w MySQL?

To może od największego do najmniejszego:
  1. date("Y.m.d H:i:s")
Cytat
2010.10.08 16:56:01
Było by lepiej sortować?

A może uniksowe sekundy:
Cytat
1286570936
Ale wtedy to mam problem z "normalnym" wyświetleniem.
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Data w bazie danych ma byc datą.
W bazie danych pole z datą ma typ DATE_TIME - tego sie trzymaj i nie wydziwiaj smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Ulysess
post
Post #3





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

Ostrzeżenie: (0%)
-----


nospar a co złego jest trzymaniu daty w formie UNIX questionmark.gif
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@Ulysess bardziej mi chodzilo by nie cudował w stylu date("d.m.Y H:i:s") smile.gif
Tu są typy datowe:
http://dev.mysql.com/doc/refman/4.1/en/dat...time-types.html
Ich się należy trzymac


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mk321
post
Post #5





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 28.06.2009

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 8.10.2010, 23:01:20 ) *
W bazie danych pole z datą ma typ DATE_TIME
Chyba chodziło o DATETIME, czy coś przeoczyłem?

To zrobiłem tak (według dokumentacji):
W tabeli dodana kolumna:
  1. ...
  2. DATA DATETIME,
  3. ...
Jak dodaje rekord to muszę (czy może się da żeby baza sobie sama wpisywała? ^^ ) z php wprowadzić datę czyli:
  1. ...
  2. date("Y-m-d H:i:s")
  3. ...
I dostaje w bazie:
Cytat
2010-10-08 18:06:07
I jak się domyślam baza już będzie umiała sobie to posortować, i nie będę miał problemów z formatem (ani nie będzie wstyd pokazać ^^ )?


@Ulysess: to złego, że ja nie będę umiał tego normalnie wyświetlić tongue.gif

Dzięki za porady (nie wiedziałem o gotowym typie danych na datę).

Go to the top of the page
+Quote Post
minolone
post
Post #6





Grupa: Zarejestrowani
Postów: 141
Pomógł: 24
Dołączył: 21.06.2008

Ostrzeżenie: (0%)
-----


Nie musisz wprowadzać daty w postaci
  1. date("Y-m-d H:i:s")

wystarczy że w zapytaniu do bazy dasz " now() " cos mniej wiecej takiego
  1. INSERT INTO `baza_danych`.`tabela_data` (`data`) VALUES (now())


Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 03:18