Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Data w domyślnym formacie - zmiana
Pcbecaw
post
Post #1





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


Czy można do phpmyadmina wprowadzić jakiś kod, który zmieni mi domyślny format wyświetlania daty z pola DATE ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
Magic WWW
post
Post #2





Grupa: Zarejestrowani
Postów: 123
Pomógł: 32
Dołączył: 9.09.2010
Skąd: Brzeg

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


Wtrącę się tylko na moment, czy nie lepiej używać będzie czasu w formie uniksowej? W MySQL funkcja UNIX_TIMESTAMP(), zaś w php funkcja time(). Jest to wiele lepsze od zabawy z gotową datą (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Pcbecaw
post
Post #3





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


Mam takie zapytanie:
  1. $sql = "SELECT `id`,`data`, `temat`,`tekst`, `obrazek` FROM $tbl_name WHERE tematyka='zaburzenia' LIMIT $start, $limit";

Męcze się z 2h z tym formatowaniem i za nic nie może mi wyjść. Jak zrobić do tego unixowy?

mam w phpmyadmin kolumne DATA o formacie DATE i jak robie tak:
  1. $sql = "SELECT DATE_FORMAT(data, '%d.%m.%Y')`id`,`data`, `temat`,`tekst`, `obrazek` FROM $tbl_name WHERE tematyka='zaburzenia' LIMIT $start, $limit";

to naprawde nie działa
zaraz sie chyba poddam...
pomógłby ktoś?
Go to the top of the page
+Quote Post
mortus
post
Post #4





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Prawie dobrze
  1. $sql = "SELECT `id`, DATE_FORMAT(`data`, '%d.%m.%Y') AS data, `temat`,`tekst`, `obrazek` FROM $tbl_name WHERE tematyka='zaburzenia' LIMIT $start, $limit";

I polecam ze zrozumieniem czytać dokumentację wraz z przykładami.
Go to the top of the page
+Quote Post
Pcbecaw
post
Post #5





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


Bardzo dziękuję (IMG:style_emoticons/default/smile.gif)
Mam jeszcze pytanie dot. funkcji update. Mianowicie: chciałbym wyświetlać newsy w zależności od odsłon ALE tylko z ostatnich trzech miesięcy. Szukałem o tej funkcji i naprawdę nie poradzę zaaplikować tego w swoją linijkę:
  1. $wynik = mysql_query("SELECT `temat`,`uni` from newsy order by uni desc limit 0,3")

Gdyby ktoś pomógł byłbym naprawdę bardzo, bardzo, bardzo, bardzo, bardzo, bardzo wdzięczny (IMG:style_emoticons/default/guitar.gif)
Go to the top of the page
+Quote Post
adbacz
post
Post #6





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

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


Jeśli masz czas uniksowy i zapisane newsy w bazie masz z daną uniksową to sortuj rekordy po dacie (tam są same liczby więc powinno CI ładnie sortować w zależności jak chcesz, czy ASC czy DESC) i wybierz tylko tyle ile chcesz ich pokazywać na stronie. Proste jak drut ;/

PS. O jakiej funkcji 'update' piszesz??

Ten post edytował adbacz 22.06.2011, 21:48:47
Go to the top of the page
+Quote Post
Pcbecaw
post
Post #7





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


Nie mam w uniksowym, (powyzej jest tak jak mam). Dałoby radę posortować w obecnym formacie?
Go to the top of the page
+Quote Post
mat-bi
post
Post #8





Grupa: Zarejestrowani
Postów: 690
Pomógł: 92
Dołączył: 6.02.2011

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


http://dev.mysql.com/doc/refman/5.5/en/dat...nction_date-add

DATE_SUB, a na następny raz MANUAL, ile można do niego odsyłać?(IMG:style_emoticons/default/exclamation.gif)

Ten post edytował mat-bi 22.06.2011, 21:54:41
Go to the top of the page
+Quote Post
Pcbecaw
post
Post #9





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


kurde, nie update... dzisiaj to ja myle wszystko, naprawde... (update dodawałem gdzie indziej i mi sie pochrzaniło).
Chciałbym sortować z bazy po 3 miechy w zaleznosci od "uni" (w/w).

Z tego co zrozumiałem z tych funkcji, to będzie jakoś tak?:
  1. SELECT `temat`,`uni` from newsy order by uni desc limit 0,3 >= DATE_SUB(CURDATE(), INTERVAL 90 DAY)


Ten post edytował Pcbecaw 22.06.2011, 22:01:42
Go to the top of the page
+Quote Post
Magic WWW
post
Post #10





Grupa: Zarejestrowani
Postów: 123
Pomógł: 32
Dołączył: 9.09.2010
Skąd: Brzeg

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


  1. SELECT `temat`,`uni` FROM `newsy` WHERE `uni` < DATE_SUB(CURDATE(), INTERVAL 3 MONTH) ORDER BY `uni` DESC


Coś chyba w ten deseń. Nienawidzę bawić się z gotową datą, jak zaczniesz robić w miarę lepsze skrypty lub większe strony to zrozumiesz dlaczego się tego nie używa (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Pcbecaw
post
Post #11





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 4.06.2011

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


  1. $wynik = mysql_query("SELECT `temat`,`uni` FROM `newsy` WHERE `uni` < DATE_SUB(CURDATE(), INTERVAL 3 MONTH) ORDER BY `uni` DESC LIMIT 0,10")

Dzięki (IMG:style_emoticons/default/snitch.gif)

A chciałbym jeszcze wiedzieć, dlaczego nie używa się gotowej daty?
Go to the top of the page
+Quote Post
Magic WWW
post
Post #12





Grupa: Zarejestrowani
Postów: 123
Pomógł: 32
Dołączył: 9.09.2010
Skąd: Brzeg

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


Ponieważ jest to toporna praca przy większych serwisach, moim skromnym zdaniem jest to ciut wolniejsze bo trzeba użyć wolniejszych funkcji. Do uniksowego czasu masz tylko funkcję date() i robisz z tym co chcesz, co do sekundy dokładne. W bazie danych się to wygodnie przetrzymuje i wygodnie się to sortuje, prosto mówiąc wygodniejsze i optymalniejsze (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.09.2025 - 13:17