![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, otóż mam następujący problem.
Wykorzystuję funkcję date(d-m-Y) do wpisu daty przy rejestracji. Posiadam też stronę umożliwiającą przedłużenie ważności konta. Aby to wykonać używam funkcji date() oraz strtotime(). Niestety data liczy się zawsze od "dzisiaj", co też jest problemem, dla przykładu: Dziś: 15-08-2009 Przedłużam konto o tydzień: 22-08-2009 Następnie przedłużam o 1 dzień: 16-08-2009 (w tym miejscu chciałbym 23-08-2009). Napisałem już funkcje która porównuje czas z bazy z czasem aktualnym i wybiera odpowiedni [z bazy jeżeli jest większy niż aktualny(konto już przedłużone) lub czas aktualny jeżeli czas w bazie jest starszy niż aktualny]. Problem tkwi w tym iż nie potrafię odpowiednio dodać czau. Np. date(d-m-Y, strtotime("+1 week")) działa bez problemowo natomiat date(15-08-2009, strtotime("+1 week")) już nie... Proszę o pomoc, jak dodać czas do pobranej z bazy daty? Ale też dodać tak by nic nie powodowało bugów typu 32-08-2009 i podobnych. Myślę że wystarczająco zaznajomiłem was z moim problemem. Pozdrawiam i z góry dziękuje za pomoc. Ten post edytował adiq 15.08.2009, 12:51:24 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli chcesz dodać do daty która jest w bazie to nie ma potrzeby żeby ją wyciągać do php
http://dev.mysql.com/doc/refman/5.1/en/dat...nction_date-add -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli chcesz dodać do daty która jest w bazie to nie ma potrzeby żeby ją wyciągać do php
http://dev.mysql.com/doc/refman/5.1/en/dat...nction_date-add Przy:
w bazie pusty wpis :/ |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A w jakim formacie masz datę
![]() dd.mm.YYYY ![]() jeżeli masz ten 1 to -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 15 Dołączył: 18.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Chodzi o kolejność liczb (dzień, miesiąc, rok) i oddzielenie ich (kropką lub myślnikiem).
-------------------- ![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o kolejność liczb (dzień, miesiąc, rok) i oddzielenie ich (kropką lub myślnikiem). Mysql przechowuje datę w postaci YYYY-mm-dd jeżeli masz inaczej to date_add nie zadziała. -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mysql przechowuje datę w postaci YYYY-mm-dd jeżeli masz inaczej to date_add nie zadziała. Rozumię że użycie date(Y-m-d) naprawi problem. Podaje część kodu:
Ten post edytował adiq 15.08.2009, 10:39:31 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 15 Dołączył: 18.03.2009 Ostrzeżenie: (10%) ![]() ![]() |
Rzuciło mi się w oczy:
na
Ten post edytował Andaramuxo 15.08.2009, 10:42:29 -------------------- ![]() |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Rzuciło mi się w oczy:
na
a może aaa jest stałą ![]() ![]() powiedz jaki masz typ pola dla tej daty w bazie ![]() -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zmień go jak najszybciej na typ date / datetime wtedy operację an dacie natym polu wykona za ciebie mysql i nie bedziesz musial babrać się w phpie.
-------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Zmień go jak najszybciej na typ date / datetime wtedy operację an dacie natym polu wykona za ciebie mysql i nie bedziesz musial babrać się w phpie. Po zmianie wszystko wyzerowalo na "0000-00-00". Zmienilem na date(Y-m-d)... Po użyciu nic sie nie zmienia... oto kod:
|
|
|
![]() ![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 53 Dołączył: 10.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
To zapytanie
zamień na
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 15.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
To zapytanie
zamień na
Zapytanie nie chce się wykonać .. nie wyświetla "Doładowano konta!" a co dziwne "error" tez sie nie pojawia. W bazie żadnych zmian. Jakieś inne pomysły ? |
|
|
![]() ![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 53 Dołączył: 10.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
a spróbuj na swoim serwerze utworzyć tabelę test taką
a następnie wykonaj zapytania (ale nie przez PHP tylko z PMA albo jeszcze lepiej z dedykowanych narzędzi GUI MySQL)
i wyniki selectów tu wklej. aż mi się nie chce wierzyć, żeby udało Ci sie wyłączyć funkcje operujące na datach |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 22:34 |