![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 4.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Kombinowałem, kombinowałem i poległem... Szukałem na forum, ale nie znalazłem. Skrypt ma mieć możliwość dodania pozycji do formularza zamówienia wewnątrz firmy, a dopiero po wypełnieniu (możliwe kilka pozycji) zapisanie o do bazy danych. Wygenerowałem formularz, którego pola mają nazwy generowane przez skrypt. Ilość takich pól jest zmienna: Kod for ($licznik = 1; $licznik <= $ilosc_pol; $licznik++) { echo "<input type=\"text\" name=\"pos$licznik\" value=\"\"></input>"; // itd. } I wychodzi: Kod <form action="dodaj.php" method="POST"> <input type="text" value="" name="pos1"></input><input type="submit" name="del_pos1" name="Usuń"></input> <input type="text" value="" name="pos2"></input><input type="submit" name="del_pos2" name="Usuń"></input> <input type="text" value="" name="pos3"></input><input type="submit" name="del_pos3" name="Usuń"></input> ... <input type="text" value="" name="posX"></input><input type="submit" name="del_posX" name="Usuń"></input><BR><inoput type="submit" name="send" value="Zapisz"></input><BR></form><BR> Problem polega na tym, że nie wiem, jak zrobić, żeby automatycznie wydobyć informację o tym, które pole typu "SUBMIT" wysłało dane z formularza. Potrzebana była by jakaś pętla typu: Kod for ($licznik = 1; $licznik <= $ilosc_pol; $licznik++) { if (isset($_POST['del_pos$licznik'])) { cośtam się dzieje... } } Ale to nie działa, a nie wiem dlaczego. Argument podany, jako nazwa elementu w tablicy $_POST jest według mnie ciągiem znaków i powinien podlegać takim manewrom, jak generowanie jego nazwy, a jakoś nie działa. A może to coś innego? Ten post edytował GraphiCAD 4.08.2008, 10:35:26 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 4.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Prawie wszystko pięknie, ale:
1. Potrzebuję informacji z pól tekstowych ORAZ informacji, które "submity" wysłały dane, żeby wywalić odpowiednią pozycję z listy. 2. Atrybuty "name" przecież są tutaj elementami sterującymi. Ale nie będę robił żadnego "if... else...", albo "case $zmienna of...", bo do tego trzeba znać liczbę elementów, a ta jest zmienna. 3. Zmienna tablicowa w tym przypadku spowoduje, że wyświetli się takie coś, jak jest napisane, ale czy napiszę "del_pos[1]", czy "del_pos3", to i tak muszę to jakoś potem wydobyć z formularza. 4. Użytkownik jest przyzwyczajony do przycisków "usuń" przy każdej pozycji i tak został zatwierdzony interfejs. 5. JAK sprawdzić, czy którekolwiek z np. 200 pól, których nazwy są generowane, a nie stałe jest zaznaczone? Też przez: isset($_POST['nazwa_pola']), a tutaj się to wywala, bo nie umiem zrobić, żeby skrypt sprawdzał wszystkie pola z tablicy $_POST sam, bez podawania mu ręcznie nazw pól. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 18:14 |