![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam kod:
oraz: Jak to prześlę metodą GET wszystko jest ok i aktualizuje w bazie. Natomiast jak odbiorę form methodą post to tak jakby nie przesyłał tego. A tak odbieram sobie w php dane.
Zatem pytanie brzmi co robią źle ? :-) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 360 Pomógł: 34 Dołączył: 20.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dziś czas na strzał ![]() Może:
Może zamiast:
To:
Kolego, Ty widzisz co ty piszesz ? //type:POST zostało zakomentowane, ponieważ mam type: formMethod czyli pobiera mi taką metodę jaką mam w formie. Nawet jak ustawie na sztywno type post to i tak nic to nie daje. Chyba masz mnie za kretyna , że zmieniając Ajax Type z GET na POST nie zmienił bym typu zmiennych z GET na POST. Obstawiam, że gdzieś problem tkwi w JS. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 360 Pomógł: 34 Dołączył: 20.08.2011 Ostrzeżenie: (0%) ![]() ![]() |
Kolego, Ty widzisz co ty piszesz ? //type:POST zostało zakomentowane, ponieważ mam type: formMethod czyli pobiera mi taką metodę jaką mam w formie. Nawet jak ustawie na sztywno type post to i tak nic to nie daje. Chyba masz mnie za kretyna , że zmieniając Ajax Type z GET na POST nie zmienił bym typu zmiennych z GET na POST. Obstawiam, że gdzieś problem tkwi w JS. Nie to żebym Ci spamował w temacie, ale piszesz w dziale przedszkole, różne osoby się przewijają z różnym poziomem wiedzy i nawet orły popełniają głupie błędy. Mój zakres wiedzy w tym temacie jest niski dlatego proste "PODPOWIEDZI" (strzały) z mojej strony, które rzuciły mi się w oczy ( typ zmiennych z GET na POST ). Widzę jednak, że ... Nie, nie miałem Cię za kretyna ![]() P.S - może zmień rozszerzenie pliku z .html na .php ![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 479 Pomógł: 97 Dołączył: 6.09.2011 Skąd: php.net :) Ostrzeżenie: (0%) ![]() ![]() |
Sprawdziłem Twój kod dla POST i działa poprawnie więc błąd masz pewnie gdzieś w odbiorze danych, sprawdź var_dump( $_POST ); w pliku php.
PS: nie rzucaj się na kogoś kto chce Ci pomóc, zachowaj troche kultury i odpisuj normalnie. -------------------- Manual prawdę Ci powie.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
Sprawdziłem Twój kod dla POST i działa poprawnie więc błąd masz pewnie gdzieś w odbiorze danych, sprawdź var_dump( $_POST ); w pliku php. PS: nie rzucaj się na kogoś kto chce Ci pomóc, zachowaj troche kultury i odpisuj normalnie. Odpisuje normalnie, ale jak ktoś nie wie o czym pisze i w ten sposób chce pomóc to chyba można się zirytować. Nie wiem w jaki sposób Ci to działa, ale zobacz co daje to w php:
Za cholere PHP nie widzi tutaj przesłanego metodą post zmiennej. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 479 Pomógł: 97 Dołączył: 6.09.2011 Skąd: php.net :) Ostrzeżenie: (0%) ![]() ![]() |
Usuń contentType: false,
-------------------- Manual prawdę Ci powie.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
Usuń contentType: false, Super! pomogło :-) Wiedziałem, że to jest wina JS. Powiedz mi, dlaczego z $_GET to działało, ale z $_POST już nie? Jeszcze mam pytanie, nad tym formem co wysyłam postem, mam w divie wartość imię wyciągane z bazy, czy da się w ten mój kod wstawić jakieś odświeżenie i pobranie nowej wartości tej nadpisanej z bazy? Chodzi mi bez przeładowywanie strony. <div id="imie"><?= $row['imie'];?></div> Panowie czy tylko jedynym rozwiązaniem będzie load(scieżka do pliku) ? lub rehresh strony? Jeszcze raz napiszę co chcę osiągnąć. Mam div potem form który updatuje się poprzez ajax. Czyli tak na szybko: <script> ajax </script> <div id="imie">Tu chcę aktualizować imię </div> <form><input name="imie"> </form> Czy ma ktoś jakiś pomysł ? Ten post edytował casperii 7.05.2015, 15:08:29 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 31 Dołączył: 10.01.2007 Skąd: Bydgoszcz/Inowrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie musisz z bazy:
ale jeśli koniecznie chcesz, dodaj
i wtedy:
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
w sumie to mnie zadowoli:
jQuery('#imie').text(jQuery('input[name="imie"]').val()); tylko trochę po modyfikacji : $('#loadName').text($('input[name="imie"]').val()); // tu chce dodać input[name="nazwisko"].val() Dzięki, a jak zrobić kolego by w diva loadName dać dwie wartości oddzielony spacją? |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 31 Dołączył: 10.01.2007 Skąd: Bydgoszcz/Inowrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Odpowiadając na twoje pytanie dlaczego z POST nie działało. PHP przetwarza w POST dane pochodzące wyłącznie z application/x-www-form-urlencoded albo multipart/form-data. Wszystko inne zwróci pustą tablicę. Możesz ją odczytać przez
-------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
@salfunglandyare a ja mam jeszcze takie dodatkowe pytanie, jak najlepiej rozwiązań problem jeśli chciałbym osiągnąć zapis drugiego forma (a w przyszłości 3 i 4 form), w praktyce coś takiego:
Teraz drugi <form> jakieś pole do zapisu np. płeć </form> I czy teraz tworzyć dwa razy to tylko z innym ID ?
A może dla dwóch formów te same ID ale ze zmienionym URL w ajaxie ?
Dlaczego nie mogę zrobić tego w 1 formie? Otóż mam kilka zakładek (tab) w których mam osobne dane do zaktualizowania. Ten post edytował casperii 8.05.2015, 09:19:51 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
W HTML5 masz <input form="">. Do tego inputy mogą być poza form.
-------------------- |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
@viking , może i racja, ale to nie największe zmartwienie czy zrobie <form>zawartość </form> <form> druga zawartość</form> czy <input form> <input form>
Tylko jak to później sprawnie pogrupować w ajax ? Czy tworzyć scirpt pod scriptem czy uda się z jednego scriptu zrobić jakiś switch ? |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zależy czym konkretnie są te dane. Jeżeli jeden form jak podałeś to imię, nazwisko a drugi płeć należy to wszystko do encji osoba (przykładowo). Logiczne zatem że powinno być wysyłane do /ajax/osoba/update (przykładowo
![]() -------------------- |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 681 Pomógł: 28 Dołączył: 14.08.2014 Ostrzeżenie: (0%) ![]() ![]() |
Może rozwinę swoją myśl i sposób działania.
Jest lewa i prawa strona, prawa strona wczytywana bez przeładowywania (odświeżenie) strony po wybraniu z lewej strony linku. Załóżmy że mamy w pierwszym linku dane osobowe (imię nazwisko), oraz drugi link dane szczegółowe (płeć, data ur.). W każdej z tych załadowanych stron pojawia się odpowiednio form oraz input. Oczywiście na początku strony w head umieszczony AJAX. No i teraz powstało pytanie, czy tworzyć 2 x AJAX z ID tych formów. Czy może jeden raz AJAX ze switchem {form 1 , form2} a może po prostu jeden AJAX i w tym pliku PHP zrobić jakiś warunek ? Bo przecież w tym pliku php raz będę update set imie=$imie, nazwisko=$nazwisko a drugim razem w tym drugim formie data urodzenia. Bo przecież jak zrobię na sztywno UPDATE users SET `imie` = '$imie', `nazwisko` = '$nazwisko', `data_urodzenia` = '$data_urodzenia' a zmienne nie otrzymają wartości to pola te mi się nadpiszą z pustą wartością. Hah no chyba , żeby robić warunki if(!empty($imie)){ $dodaj_imie = '`imie` = '.$imie.''; } ? A później UPDATE users SET $dodaj_imie, $dodaj_nazwisko itd ? Zależy czym konkretnie są te dane. Jeżeli jeden form jak podałeś to imię, nazwisko a drugi płeć należy to wszystko do encji osoba (przykładowo). Logiczne zatem że powinno być wysyłane do /ajax/osoba/update (przykładowo ![]() Możesz mi kolego dokładnie napisać, jakby to miało wyglądać w praktyce ? Ten post edytował casperii 8.05.2015, 13:36:52 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Gdybyś używał jakiś ORM było by najłatwiej
![]() Przykład z Propela - http://propelorm.org/documentation/referen...ive-record.html
A tak niestety trzeba się bawić w warunki. -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.07.2025 - 05:37 |