Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> PHP + formularze, formularz z dynamiczną liczbą elementów
Aztech
post 17.02.2005, 19:39:49
Post #1





Grupa: Zarejestrowani
Postów: 276
Pomógł: 3
Dołączył: 22.10.2003
Skąd: Wrocław

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


Przedstawię tutaj obrazowo problem w wersji podstawoej (ja sboe będę mógł z nim poradzić to dam radę z tym z czym się boraykam) - bo nie przychodzi mi żaden inny sposób rozwiązania tego.

Chciałbym zrobić formularz, który będzie korzystał z dynamiczej ilości elementów.
Najpierw zapytuję klienta o ilość rozegranych różnych turniejów i wynik przechowuję w zmiennej $round_nr (np =2). Nastepnie pojawiają się strona, która wypytuje o ilość rozegranych meczów w każdym z turniejów.
np:
  1. <?php
  2. for ($i=0;$i<$round_nr;$i++) {
  3. echo '<li><p>podaj ilosc pojedynków w danej rundzie '.($i+1).': </p><input type=\"type=\"text\" name=\"round_'.($i+1).'\" maxlength=\"150\" tabindex=\"'.($i+1).'\"></li>';
  4. ?>


Zalozmy ze dla poszczegolnych rund wartosci jakie poda uzytkownik to 3, 2

--------------------------------------------------------------
RUNDA 1
pojedynek 1: jakies tam info 1
pojedynek 2: jakies tam info 2
pojedynek 3: jakies tam info 3

RUNDA 2
pojedynek 1: jakies tam info 1
pojedynek 2: jakies tam info 2

-------------------------------------------------------------------

Problem polega na tym że nie wiem jak się odwołać w php w pętli do zmiennych $round_# (gdzie # jest z przedzialui 1...$round_nr)

Kod który napisałem wygląda tak i potrzebuje drobnej modyfikacji aby działał: w miesjcu gdzie znajduje sie zmienna $jaka_wartosc_tu_podstawic tak aby mozna odczytywac w kazdym przejsciu petli wartosc z $round_1 a potem z $round_2 itp

  1. <?php
  2. require_once(&#092;"loadklub.php\");
  3. LoadKlubList($tab, $count, $user, $password);
  4. for($i=0;$i<$round_nr;$i++) {
  5. echo '<div class=\"new_player\"><p class=\"header\">Runda numer '.($i+1).'</p>';
  6. echo '<div ><ul>';
  7. //poszczegolne stoly w danej rundzie
  8. for ($l=0;$l<$jaka_wartosc_tutaj_postawic;$l++) {
  9. echo '<li>#'.($l+1).': <select name=\"round_'.($i+1).'_'.($l+1).'\" tabindex=\"1\">';
  10. for ($k=0;$k<$count;$k++) {
  11. echo '<option value=\"'.$tab[$k][&#092;"PID\"].'\">'.$tab[$k][\"Name\"].'</option>';
  12. }
  13. echo '</select>
  14. <p>vs</p>
  15. <select name=\"round_1_1\" tabindex=\"1\">';
  16. for ($k=0;$k<$count;$k++) {
  17. echo '<option value=\"'.$tab[$k][&#092;"PID\"].'\">'.$tab[$k][\"Name\"].'</option>';
  18. }
  19. echo '</select></li>';
  20. echo 'wynik: <input type=\"text\" name=\"host_'.($i+1).'_'.($l+1).\" tabindex=\"\" value=\"\" class=\"submit\"> vs. <input type=\"text\" name=\"guest_'.($i+1).'_'.($l+1).\" tabindex=\"\" value=\"\" class=\"submit\">';
  21. }
  22. echo '</ul></div>
  23. </div>';
  24. }
  25. ?>


P.S. Mam nadzieję że wystarczająco jasno napisalem o co mnie się rozchodzi

Ten post edytował Aztech 17.02.2005, 19:40:26
Go to the top of the page
+Quote Post
skobek
post 17.02.2005, 19:52:31
Post #2





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 9.10.2003

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


Może taki mały przykład Ci pomoże:

  1. <?php
  2.  
  3. $round_1 = &#092;"nowa zmienna\";
  4. $nowa= &#092;"round_1\";
  5. echo $$nowa; // nowa zmienna
  6.  
  7. ?>


--------------------
Go to the top of the page
+Quote Post
dr_bonzo
post 17.02.2005, 19:57:36
Post #3





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


  1. <?php
  2. $_POST[ 'round_' . $i ]
  3. ?>

lub $_GET
albo nazywasz pola formularza:
"round[]"
wtedy
$_POST[ 'round' ] bedzie tablica


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Aztech
post 17.02.2005, 21:18:12
Post #4





Grupa: Zarejestrowani
Postów: 276
Pomógł: 3
Dołączył: 22.10.2003
Skąd: Wrocław

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


@Skobek dokładnie o to mi chodziło, i teraz wszystki jest cacy i guitar.gif gra
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: 12.07.2025 - 15:11