Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][JavaScript][PHP]połączenie wielu inputow w jedną zmienną
ilkar
post 1.09.2009, 14:09:27
Post #1





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 20.08.2007

Ostrzeżenie: (0%)
-----


Hej

mam pytanie

chciałbym stworzyc formularz, ktory dynamicznie sie powiększa, czyli mam na przyklad pole <input type="text" name="praca">
i chce dodac przy tym polu przycisk +, ktory umozliwi mi tworzenie za pomoca ajaxa kolejnych takich pól.
To wszystko bez problemu sobie tworze, lecz moj problem zaczyna się jeżeli chodzi o odbieranie danych z tych pól, ponieważ tworząc dynamicznie pola
wartość name="" jest automatycznie inkrementowana, czyli w pierwszym polu mamy:
<input type="text" name="praca1">
a w kolejnym:
<input type="text" name="praca2">

i chciałbym w jakiś możliwie dynamiczny sposób odebrać zmienne z tych inputów, ponieważ nie chce pisać w skrypcie odbierającym 50 razy

$zmienna1 = $_POST['praca1']
$zmienna2 = $_POST['praca2']

gdyż nawet nie do konca jestem w stanie przewidziec ile inputów zostanie stworzonych.

Czy jest jakas opcja sklejenia tych zmiennych w macierz, czy to za pomocą JS, czy PHP, czy czego innego?

Dzięki i pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
kfc4
post 1.09.2009, 14:21:10
Post #2





Grupa: Zarejestrowani
Postów: 195
Pomógł: 18
Dołączył: 7.10.2007

Ostrzeżenie: (0%)
-----


A pętelki? While, foreach, for?
Go to the top of the page
+Quote Post
jajcarzd1
post 1.09.2009, 14:30:59
Post #3





Grupa: Zarejestrowani
Postów: 215
Pomógł: 19
Dołączył: 24.12.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Ja bym to zrobił trochę inaczej zamiast nazywac każdego inputa inaczej to daj wszędzie nazwę w postaci tablicy

  1. <input type="text" name="praca[]">


a potem po stronie PHP lecisz sobie w pętli i tyle

  1. foreach ($_POST['praca'] as $item) {
  2. //rób co chcesz
  3. }


Sądze że to chyba najprostszy sposób


--------------------
My mind is glowing ...
Jeśli pomogłem push the button :)
Go to the top of the page
+Quote Post
deirathe
post 1.09.2009, 14:43:43
Post #4





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

Ostrzeżenie: (0%)
-----


Zrobił bym dosłownie jak jajcarzd1 z tym że foreach bym troszkę zmieniL:
  1.  
  2. foreach ((array)$_POST['praca'] as $item) {
  3.  
  4. //rób co chcesz
  5.  
  6. }


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
jajcarzd1
post 1.09.2009, 14:47:37
Post #5





Grupa: Zarejestrowani
Postów: 215
Pomógł: 19
Dołączył: 24.12.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Cytat(deirathe @ 1.09.2009, 15:43:43 ) *
Zrobił bym dosłownie jak jajcarzd1 z tym że foreach bym troszkę zmieniL:
  1.  
  2. foreach ((array)$_POST['praca'] as $item) {
  3.  
  4. //rób co chcesz
  5.  
  6. }


No fakt bo jak nie będzie żadnego inputa to będzie warning, no chyba że poleci pętlą for.


--------------------
My mind is glowing ...
Jeśli pomogłem push the button :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 10:45