![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam lamerski problem i chyba zmęczenie materiału daje się we znaki albo sam nie wiem co
![]() dla porządku : nieszczęsny input:
formularz (w sumie chyba starczy tyle żeby pokaząc ze jest $_POST:
wyciągam więc dane z formularza:
no i.... co dalej? echem wyrzygałem na ekran czy poprawnie pobrane są dane i jest ok. dane z formularza są jak najbardziej prawidłowe ale juz do sql nie zapisuje się poprawna data tylko wspomniane 0000-00-00 dorzuce jeszcze:
pozostałe pola są nieistotne więc je pomijam. mam jeszcze pytanie - czy nie lepiej zamiast dwóch pól z datą i godziną używać jednego pola typu datetime? i jeśli tak - jak pobrać dane z dwóch inputów i wysłać je poprawnie do bazy danych bo próbowałem też w taki sposób i też mam z tym problemy. z góry dziękuję za wszelką konstruktywną dyskusję i porady/ wskazówki/pomoc w rozwiązaniu problemu Ten post edytował Darkstorm 21.08.2010, 19:46:36 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jeszcze jakbyś pokazał swoje zapytanie i dodatkowo daj echo $zapytanie i też wrzuć co ci pokazuje.
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
no to może tak:
dane są zapisywane w bazie poprawnie, jedynie zamiast pobranej daty pojawiają się same zera. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
A co ci wyrzuci echo $zapis?
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
absolutnie nic
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 664 Pomógł: 169 Dołączył: 8.01.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Żartujesz, to jak może ci cokolwiek dodawać do bazy skoro zapytanie jest puste?
-------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
no wyobraź sobie że nie żartuję
![]() dane które wysyłam są pobierane z formularza - napisałem przecież. tak je sobie pobieram:
jeśli nie wypełnię prawidłowo lub coś opuszczę to zapytanie się nie wykona. to już sprawdziłem i to działa. problemem jest tylko to że niezależnie od tego co będzie przechowywać zmienna data do bazy danych zostanie dodana wartość 0000-00-00 zamiast wpisanej daty |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Jaki masz typ daty ustawiony w bazie? Jakie ustawienia bazy? Może data jest w innym formacie temu nie zapisuje tak jak trzeba. Ustaw typ pola na timestamp i zobacz jak będzie wtedy.
-------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 782 Pomógł: 153 Dołączył: 21.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
@vokiel raczej nie w typie problem - przecież ma ustawiony DATE, Mysql chyba dopuszcza tylko format YYYY-MM-DD.
A jakąś wartość przyjmuje zmienna $date? daj var_dump($date) przed $zapis = 'Insert...' -------------------- Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]! |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
napisałem w pierwszym poście że typ danych dla pola "data" to date. zmiana na timestamp nie pomogła.
o jakie konkretnie ustawienia bazy pytasz? dopisałem sobie echo, żeby sprawdzić typ danych dla zmiennej $data: i w efekcie dostałem info:
to samo dla $time i wniosek jest taki, że zarówno $data jak i $time to string. $time dodaje się prawidłowo ( $time - pole w bazie typ TIME) a $data nie ($data data typ DATE/ TIMESTAMP - tutaj dla obu typów nie działa ptrawidłowo) ///edit wciskam na kalendarzu datę 25 sierpnia 2010 roku a var_dump wyrzuca mi na ekran: string(10) "2010-08-25" //edit2 zrobiłem restart localhosta i okazuje się że var_dump wyświetla mi bool(false). co ciekawe gdy wpisze do formularza niepełne dane - $data to string, gdy wypełnię cały - już ginie... ///edit3 użyłem najgroźniejszej broni - logicznego myślenia. skoro w else $data magicznie znikała (sam nie wiem dlaczego) ponownie pobrałem ją z formularza. dzięki temu udało się i zapis do bazy danych wykonuje się poprawnie. wszystko działa jak należy ![]() dzięki wszystkim za zainteresowanie się moim problemem i za wskazówke z var_dump'em. dzięki temu udało się ustalić gdzie zmienna $data gubi swoją wartość. dla porządku - taka wersja działa:
Ten post edytował Darkstorm 21.08.2010, 21:46:55 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 782 Pomógł: 153 Dołączył: 21.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
@DarkStorm: tam to stoi jak byk tylko nie rzuca się w oczy - zobacz:
Twoje:
A teraz
Głupi błąd a jednak się zdarza. Ten post edytował everth 21.08.2010, 22:43:44 -------------------- Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]! |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.08.2010 Ostrzeżenie: (0%) ![]() ![]() |
o kurde... rzeczywiście. jak ja tego nie zauważyłem to nie mam pojęcia
![]() widocznie zmęczenie materiału dało się we znaki bo takie niedopatrzenia raczej mi się nie zdarzają. dzięki za spostrzegawczość. chyba zrobię dzień przerwy bo zamiast iść do przodu to zacinam się na głupich błędach |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.05.2025 - 07:47 |