Formularze $_POST |
Formularze $_POST |
25.05.2016, 20:42:53
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
Witam,
mam problem z formularzem. Z listy wyboru chcę usunąć rekord z Bazy danych. Chąc ułatwić sobie zadanie w liscie wpisałem kilka zmiennych i nie wiem jak to poźniej wstawić do zapytanie MySql. Oto moj select z formularza.
po przesłaniu formularza $_POST przesyła mi
można to jakoś rozdzielić? Ten post edytował faleth 25.05.2016, 20:44:52 |
|
|
25.05.2016, 21:03:06
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
dziwisz sie? skoro laczysz stringi w <option value={tutaj twoj string}
ale nawet go sobie niczym nie rozdzielasz? skorzystaj z JSON w value stworz sobie wczesniej tablice, a pozniej ja "encoduj" czyli mniej wiecej Twoj kod bedzie wygladal tak
dalej powinienes dac rade, z formularz dostaniesz wartosc w postaci JSON, ktora musisz "decodowac" wiecej info w linkach http://php.net/manual/en/function.json-encode.php http://php.net/manual/en/function.json-decode.php |
|
|
25.05.2016, 21:05:35
Post
#3
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
dzieki wielkie. to są moje początki z PHP i całą resztą więc niektórych rzeczy nie wiem. Teraz już sobie poradzę
|
|
|
25.05.2016, 21:06:31
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
No to powodzenia
|
|
|
25.05.2016, 22:27:04
Post
#5
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
jeszcze jeden problem. $_POST nic nie wysyła
Ten post edytował faleth 25.05.2016, 22:32:09 |
|
|
25.05.2016, 22:38:57
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
Pokaż kod.
W pierwszym poście pisałeś, że coś działa, a po zmianie na JSON juz nie? |
|
|
25.05.2016, 22:43:12
Post
#7
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
no niestety jak zmieniłem na json i $_POST nic nie wysyła
Ten post edytował faleth 25.05.2016, 22:44:57 |
|
|
25.05.2016, 23:10:03
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
1. Kod powinien Ci wygenerowac html tego typu
<option value="{"date":"test","fieldNumber":"asd","plant":"dupa","name":"444"}">test</option> 2. Czy w $_POST w ogole nic nie istnieje, a wczesniej istanialo? Powinienes miec klucz w $_POST['usun'] 3. Podejrzewam, że to nie jest cały kod html, ale http://stackoverflow.com/a/17139540 |
|
|
25.05.2016, 23:14:32
Post
#9
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
|
|
|
26.05.2016, 08:59:23
Post
#10
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) |
json_encode(['id'=>10]); zwróci {"id"=>"10"}, innymi słowy option będzie wyglądał tak <option value="{"id":"10"}">, i dlatego nie zadziała.
Najprostszym rozwiązaniem jest dodanie _ (lub innego znaku) do stringa np
lub bardziej poprawnie, użycie unikalnego identyfikatora z bazy danych Ten post edytował CuteOne 26.05.2016, 09:01:21 |
|
|
26.05.2016, 16:09:56
Post
#11
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 6.05.2016 Ostrzeżenie: (0%) |
Zrbiłem tak jak napisałeś i poszło. Dzieki wielkie
|
|
|
29.05.2016, 01:08:30
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
json_encode(['id'=>10]); zwróci {"id"=>"10"}, innymi słowy option będzie wyglądał tak <option value="{"id":"10"}">, i dlatego nie zadziała. Najprostszym rozwiązaniem jest dodanie _ (lub innego znaku) do stringa np
lub bardziej poprawnie, użycie unikalnego identyfikatora z bazy danych albo skorzystanie z htmlspecialchars i wrzucenie do niego JSONa i sądzę że bardziej czytelne niż klejenie stringa. Do tego dodając jakiś "znak specjalny" do tekstu uniemożliwiamy sobie użycie takiego znaku w wartościach w bazie
Ten post edytował Szymciosek 29.05.2016, 10:48:01 |
|
|
29.05.2016, 12:46:47
Post
#13
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) |
albo skorzystanie z htmlspecialchars i wrzucenie do niego JSONa i sądzę że bardziej czytelne niż klejenie stringa. Do tego dodając jakiś "znak specjalny" do tekstu uniemożliwiamy sobie użycie takiego znaku w wartościach w bazie
No raczej nie
ps. napisałem, że bardziej odpowiednim sposobem powinno być przekazanie unikalnego id z bazy. Jeżeli martwi cię zablokowanie możliwości użycia znaku w bazie, to zawsze można użyć _#@_ zamiast _ Ten post edytował CuteOne 29.05.2016, 12:50:05 |
|
|
29.05.2016, 16:10:31
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
Owszem zwróci null, bo teraz $json jest różnymi znakami, więc ostatecznym rozwiązaniem z użyciem JSON jest
|
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 01:23 |