![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, jeszcze jeden problem się pojawił a mianowicie:
staram się wyświetlić wyniki większe i równe dzisiejszej dacie, próbowałem następująco: ale niestety nie działa, jeszcze próbowałem z czasem bezpośrednio:
i otrzymuję wynik który nie uwzględnia tak jakby miesiąca, ponieważ daty mam dodane luty/marzec a wyniki wyświetlają się powyżej 25 marca. Format daty zapisany w bazie do wyświetlania to dd.mm.yyyy dziękuje z góry za zainteresowanie ![]() Ten post edytował zyluss 25.02.2017, 12:45:40 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 233 Pomógł: 27 Dołączył: 19.10.2014 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
ALe to nic też nie daje.
Ten post edytował woxala123 25.02.2017, 14:43:24 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
zmieniłem format daty w bazie na yyyy-mm-dd i wyświetla koncerty które już się odbyły
niestety, też wyświetla starsze daty.. może jakoś zapytanie powinno być inaczej sformułowane?
zwraca: Illegal mix of collations (utf8_polish_ci,COERCIBLE) and (latin1_swedish_ci,NUMERIC) for operation '>' Ten post edytował zyluss 25.02.2017, 14:46:45 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Zastosuj ostatni kod powinno Ci wyświetlać tak
28th January 2018 jeśli masz wpisane w kolumnę datę 28.01.2018. To jest tylko przykład. Ja zrobiłem sobie na przykładowej mojej bazie ten kod i działa
Ten post edytował woxala123 25.02.2017, 14:55:08 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Pole DATETIME w bazie zawsze ma format YYYY-MM-DD HH:MM:SS https://dev.mysql.com/doc/refman/5.7/en/datetime.html
Dopiero przy wyświetlaniu powinieneś je formatować. Ale wszystkie operacje porównujące dane masz przeprowadzać właśnie na takim formacie. -------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Czyli już
![]() ![]() Ten post edytował woxala123 25.02.2017, 15:07:31 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Pole DATETIME w bazie zawsze ma format YYYY-MM-DD HH:MM:SS https://dev.mysql.com/doc/refman/5.7/en/datetime.html Dopiero przy wyświetlaniu powinieneś je formatować. Ale wszystkie operacje porównujące dane masz przeprowadzać właśnie na takim formacie. no tak dlatego używałem date_format aby z formatować to tak jak chcę aby było wyświetlane. problem niestety jest nadal (sprawdzałem na datach 24.02 25.02 26.02) natomiast daty 01.03 już nie wyświetla... wydaje mi się jakby nie uwzględniał miesiąca? Ten post edytował zyluss 25.02.2017, 16:00:12 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Dam ci przykład wraz bazą danych
Wstaw sobie jakies przykładowe dane i śmiga jak nalezy. I teraz dostosuj sobie do swojego kodu. Ten post edytował woxala123 25.02.2017, 16:27:51 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dam ci przykład wraz bazą danych
Wstaw sobie jakies przykładowe dane i śmiga jak nalezy. I teraz dostosuj sobie do swojego kodu. okej, i teraz w pętli powiedz jak wyświetlasz z formatowaną datę, bo ja wstawiając: ".$r['data_koncertu']." uzyskuje wynik taki jak w bazie a nie taki jak go formatujemy |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Wstaw sobie przykładowe dane do bazy którą Ci podałem i gra i huczy.
Ten post edytował woxala123 25.02.2017, 18:54:28 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
To w jaki sposób wyświetlisz w PHP nie ma żadnego znaczenia. PHP wyświetla datę jako stringa z bazy. Możesz to później jeszcze przekształcać na \DateTime i dalej formatować.
http://sqlfiddle.com/#!9/678e90/4 -------------------- |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
http://sqlfiddle.com/#!9/b5fc69/7
Może być i tak |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tylko co to miało dać? Jak widzisz wybrany jest rekord przestarzały dopóki nie porównasz daty jako Y-m-d
-------------------- |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
To tylko to
http://sqlfiddle.com/#!9/a663f6/27 SELECT * ,date_format(Data , ' %d %m %Y') AS DAT from comments WHERE Data >= CURDATE(); |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 1 Dołączył: 18.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
To tylko to http://sqlfiddle.com/#!9/a663f6/27 SELECT * ,date_format(Data , ' %d %m %Y') AS DAT from comments WHERE Data >= CURDATE(); spójrz, zmień datę w jednej komórce (dziś jest 26.02 więc) na 25.02 czyli koncert który się już odbył i w wyniku normalnie koncert jest dalej wyświetlany natomiast działa w 100% to do czego doszliśmy razem:
i dodatkowo zmiana miesięcy na polskie i format daty jaki chcę mieć wyświetlany na stronie: Dziękuje wszystkim za pomoc i zaangażowanie ![]() |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 12 Dołączył: 9.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Nie wiem w jaki sposób dalej Ci to wyświetla ale mnie tu jakoś normalnie wyświetla i pokazuje tylko datę 26.02 oraz 21.03.2017
http://sqlfiddle.com/#!9/fd1674/1 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 05:12 |