![]() ![]() |
| -Gość_Mikolaj_*- |
Post
#1
|
|
Goście |
Hej mam date utworzenia rekordu. Zapisuję ją w bazie w formacie date("d/m/Y") . I chciałbym teraz mieć możliwość sprawdzania cz juz minelo 7 dni. Wiecie, jezeli data starsza o więcej niż 7 dni niż aktualna to niech nie wyswietla...
Moje pytanie jest takie: jak zrobić takie sprawdzenie? moge to robic na formacie date, czy muszę mieć to zapisane w formie time? Pozdrawiam i sorki za niefachowe słownictwo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 28.10.2005 Ostrzeżenie: (0%)
|
|
|
|
|
| -Gość_Mikolaj_*- |
Post
#3
|
|
Goście |
Aha...No wyglada fajnie. Chyba zrobie w ten sposob.
Wielkie dzieki!! Ps. ma ktos inny pomysl? |
|
|
|
| -Gość- |
Post
#4
|
|
Goście |
Zastanawia mnie ten kawalek kodu.... No bo data z bazy wyglada np. tak 11/05/2006, więc jak zrobie tak jak mówisz to będzie np: if 18/05/2006>30/05/2006 to nie wyświetlaj. Pytania: Takie porównanie działa? Skąd wiadomo, że to data a nie jakis string (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Można porównywać daty, a nie tylko time?? |
|
|
|
| -Gość- |
Post
#5
|
|
Goście |
no dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) dziwi mnie to, ale dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) dzieki
|
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 28.10.2005 Ostrzeżenie: (0%)
|
|
|
|
|
| -Gość_Mikolaj_*- |
Post
#7
|
|
Goście |
a jednak chyba nie dziala.....
(IMG:http://forum.php.pl/style_emoticons/default/sad.gif) no bo: 03/06/2006>30/05/2006 w tym momencie nie wykonuje polecenia, a ewidentnie pierwsza data jest większa niż druga..... |
|
|
|
| -Gość_Mikolaj_*- |
Post
#8
|
|
Goście |
Zauważyłem.... No ale to nie zmienia faktu, że nieto porównanie nie działa....
|
|
|
|
Post
#9
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
no bo niestety dat nie porównuje sie jako stringi. nie ten tok myslenia. daty porownuje sie jako liczby, czyli w postaci generowanej przez mktime. Teraz juz chyba wiesz jak zmodyfikowac skrypt (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
|
Post
#10
|
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 1 Dołączył: 17.01.2006 Skąd: pionowe Ostrzeżenie: (0%)
|
niewiem jak w innych bazach ale w mysql jest cos takiego jak DATEDIFF
|
|
|
|
| -Gość_Mikolaj_*- |
Post
#11
|
|
Goście |
|
|
|
|
| -Gość- |
Post
#12
|
|
Goście |
Ja to czasem robie tak:
$today=date(Ymd); $date_7= date("Ymd",mktime(0,0,0,$m,$d+7,$y)); teraz $today bedzie mialo wartosc "20060530" a $date_7 - "20060606" Teraz porownuje jako stringi: if ("$today"<"$date_7") { blablabla } |
|
|
|
| -Gość_Mikolaj_*- |
Post
#13
|
|
Goście |
Rozwiazanie goscia powyzej działa tak jak trzeba... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Chociaz nie wiem czy jest " poprawne" i "zgodnie ze światowymi konwencjami" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
|
Post
#14
|
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 28.10.2005 Ostrzeżenie: (0%)
|
ja się jeszcze porprawie
sorki zawcześniejsze zamieszanie |
|
|
|
| -Gość_Mikolaj_*- |
Post
#15
|
|
Goście |
Dzieki dzieki....
A wie ktoś może czy dałoby się to zrobić na poziomie zapytania SQL (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) I jak?? |
|
|
|
| -Gość_Mikolaj_*- |
Post
#16
|
|
Goście |
Odpowiem sobie sam, jakby ktoś był ciekawy rozwiązania:
W tabeli jest kolumna dateadded typ DATE gdzie wstawiam date przy tworzeniu rekordu
Działa dobrze, tylko teraz musze wszystkie daty pozmieniać bo sie kaszana zrobiła (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Mam nadzieje ze sie kiedys komus przyda.... |
|
|
|
![]() ![]() |
|
Aktualny czas: 18.12.2025 - 21:33 |