![]() |
![]() |
![]()
Post
#1
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Witam, mam problem z tablicami w formularzach i przesłaniem ich do PHP, mam przykładowo taki kod:
i teraz pytanie, jak przesłać taką pseudo tablicę do PHP? Oczywiście mówimy tu o wysłaniu przez AJAX. Pozdrawiam, Piotrek. Ten post edytował webdicepl 24.11.2007, 18:52:08 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
tak samo jak i zwykłym rządaniem - ajax to wysyłanie takiego smego rządania jak zwykłe wywołanie strony poprzez podanie adresu - tyle że bez przeładowania - w zależności od tego w jaki spsób korzystasz z dobrodziejstw AJAX'a dane podajesz jako zmienne na odpowiednim indeksie lub jako zserializowany ciąg czyli np
Kod text[]=cos&tekst[]=cos innego - tyle -------------------- |
|
|
![]()
Post
#3
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
źle ująłem problem, wysyłam dane w taki sposób:
ale gdy mam tablicę nie odczytać wartości danego pola, np:
jeśli pseudo tablica miała by jakiś index nie było by problemu, zatem jak przesłać takową tablicę? Ten post edytował webdicepl 24.11.2007, 23:46:27 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
Kod for (i=0;i<document.insertProduct.elements.length;i++){ if (document.insertProduct.elements[i].name='name[]'){ parametrs += 'name[]=' + document.insertProduct.elements[i].value+' ' } } pisane z palca - ewetualne bledy sam wylapiesz ![]() -------------------- |
|
|
![]()
Post
#5
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
a prosze ja Ciebie bardzo, dodam jeszcze że różnego rodzaju frameworki javascript mają wbudowane metody serializacji pól formularzy
np. google -> jquery ![]() -------------------- |
|
|
![]()
Post
#7
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Jakoś nie jestem zwolennikiem korzystania z gotowych rozwiązań co zapewne jest marnotrawieniem czasu, choć z drugiej strony przeglądając advAjax i jak wyżej wspomniałeś jQuery stwierdzam że wyglądają dość ciekawie i pewnie przy odrobinie czasy je przetestuje i być może wybiorę którąś z nich.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
którąś, te biblioteki nie są że tak powiem tożsame - advAjax - jak sama nazwa wskazuje to tylko ajax, a jQuery - to także obsługa DOM, efekty i mnustwo innych
-------------------- |
|
|
![]()
Post
#9
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Teraz mam trochę dziwny problem, a mianowicie wysyłając drugi raz żądanie do serwera tablica nie jest zerowana tylko dodawane są nowe elementy. Przykładowo w formularzu mam dwa pola
Kod parametrs[] Czyli w pliku PHP powinienem otrzymać Kod Array ( [parametrs] => Array ( [0] => parametrs1 [1] => parametrs2 ) ) I jak wyżej wspomniałem po ponownym wysłaniu żądania dodawane są nowe elementy do tablicy, np. Kod Array ( [parametrs] => Array ( [0] => parametrs1 [1] => parametrs2 [3] => parametrs1 [4] => parametrs2 ) ) Sprawdzałem w JavaScript i jest wszystko dobrze. |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
dobrze - to znaczy jak? show me the code
-------------------- |
|
|
![]()
Post
#11
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Dałbym sobie głowę uciąć że edytowałem posta i napisałem że rozwiązałem problem.
Okazało się jednak że błąd leżał po stronie JavaScript, źle zerowałem zmienna parametrs, a na dodatek źle sprawdzałem ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 01:55 |