Problem z data |
Problem z data |
20.12.2004, 18:59:51
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 20.12.2004 Ostrzeżenie: (0%) |
Wpsuje do tabeli date Wysylki Produktu (varchar) jesli termin wysylki zostanie przekroczony powinna sie ta data ukazac na czerwono.
Zrobilem to tak: <?php $date = date("d.m.Y"); if ($date < $row_ALL['WYSYLKA']) { echo ("<font color='red' size='2'>".$row_ALL['WYSYLKA']."</font>"); } else { echo $row_ALL['WYSYLKA']; } ?> Problem polega na tym ze przy tym formacie zapisu Daty (dzien, miesiac, rok) to niefunkcjonuje. Czy jest jakas mozliwosc przekrecenia daty (rok, miesiac, dzien) zanim zostanie urzyta petla if. --- hwao |
|
|
20.12.2004, 19:13:33
Post
#2
|
|
Grupa: Zarejestrowani Postów: 140 Pomógł: 16 Dołączył: 12.06.2002 Skąd: Kielce Ostrzeżenie: (0%) |
Gdzie chcesz tą datę przekręcać: w zmiennej $date czy przed wpisaniem do tabeli?
|
|
|
20.12.2004, 19:22:01
Post
#3
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 28.09.2003 Skąd: Rzeszów Ostrzeżenie: (0%) |
ja date zawsze trzymam w formacie unix timestamp (aktualna zwraca funkcja time(), wiecej w manualu), w mysqlu mozna trzymac to w polu timestamp - poprostu latwiej sie porownuje wartosci.
Ten post edytował M4chu 20.12.2004, 19:22:28 |
|
|
20.12.2004, 19:25:24
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 20.12.2004 Ostrzeżenie: (0%) |
W tabeli musi byc zapisywana w formacie (d,m,Y) Problem w tym ze w tym formacie porownywane sa najpierw dni daty, i jesli dzisiaj mamy 20.12.2004 a Data wysylki bedzie np.: 19.01.2005 to i tak ukaze sie na czerwono poniewaz 19 jest mniejsze od 20. Dlatego chce przekrecic te date (string) na Y,m,d. Wtedy bedzie funktionowac poniewaz bedzie porownywyna rok, miesiac na koncu dzien.
|
|
|
20.12.2004, 19:46:33
Post
#5
|
|
Grupa: Zarejestrowani Postów: 848 Pomógł: 0 Dołączył: 7.07.2004 Skąd: Wrocław Ostrzeżenie: (0%) |
|
|
|
20.12.2004, 19:59:50
Post
#6
|
|
Grupa: Zarejestrowani Postów: 140 Pomógł: 16 Dołączył: 12.06.2002 Skąd: Kielce Ostrzeżenie: (0%) |
Dla formalności: podany przez Ciebie przykład akurat nie jest prawdziwy.
Warunek masz następujący: $date<$row['wysylka'] Skoro dziś mamy 20, a wysyłka planowana na 19 to nawet przy porównaniu samych dni warunek nie jest prawdziwy i zawartość if się nie wykona. Skoro musisz mieć datę w takim formacie przed porównaniem tak jak pisze M4chu zamieniaj ją na uniksowy znacznik czasu przy pomocy mktime i porównuj. |
|
|
20.12.2004, 20:13:42
Post
#7
|
|
Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz |
Zamykam
Nie wykonanie mojej prozby przez intertom, przykro mi. Jak napiszesz na pw czego nie zrobiles to odblokuje |
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 14:37 |