Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Typowanie wyników formularz
Forum PHP.pl > Forum > Przedszkole
Władek
Witam
Za czołem pisanie prostego skryptu o typowaniu wyników meczy.
No i utkwiłem w jednym miejscu rozwiązanie pewnie jest proste ale jakoś nie mogę tego wymyślić. Otóż wybieram już daną kolejkę no i tworze formularz który pokazuje drużyny oraz wyniki które mogą się pojawić i tutaj pojawia się problem oto cześć kodu formularza :
  1. <?php
  2. while($r2 = mysql_fetch_assoc($zapytanie))
  3.        {
  4.              echo '
  5.                <td bgcolor="silver">'.$r2['druzyna1'].'</td>
  6.                <td bgcolor="silver">vs</td>
  7.                <td bgcolor="silver">'.$r2['druzyna2'].'</td>
  8.                <td bgcolor="silver"></td>
  9.                                <tr></tr>
  10.                                  <td></td>
  11.                                  <td>
  12.                 <input type="radio"  name="0-8" value="1"/>0-8 <br  />
  13.                 <input type="radio"  name="9-16" value="2"/>9-16 <br  />
  14.                  <input type="radio"  name="17-25" value="3"/>17-25 <br  />
  15.                  <input type="radio"  name="26" value="4"/>Pwyżej 26 <br  />
  16.                                  </td>
  17.                                  <td></td>
  18.                                  <td></td>
  19.                                  <tr></tr>
  20.                                  ';
  21.                              }
  22. ?>

Jako tak działało by to gdyby były tylko dwie drużyny czyli jeden mecz do obstawienia. Jeżeli pojawia się więcej
meczy to jeśli prześle dane to podczas próby odczytania zaznaczonej opcji to dostaną tylko tą ostatnią. Bo się nadpiszą. No i jak to zrobić żeby dostać wybraną opcje która będzie przypisana do danego meczu ?
Foxx
Poczytaj o inputach typu radio i o obsłudze ich.
W obrębie jednego meczu mozesz nazwać wszystkie radiobuttony tak samo (czyli możesz im przydzielić taki sam parametr name):
  1. <input type="radio" name="mecz" value="1"/>0-8 <br />
  2. <input type="radio" name="mecz" value="2"/>9-16 <br />
  3. <input type="radio" name="mecz" value="3"/>17-25 <br />
  4. <input type="radio" name="mecz" value="4"/>Pwyżej 26 <br />

Wyślij sobie taki formularz i popatrz na wartości tablicy $_POST (albo $_GET, w zależności od metody).

A co do kwestii nadpisywania: rzeczywiście, jeżeli meczów będzie więcej to trzeba inaczej nazwać kolejne grupy radiobuttonów. Stwórz sobie zmienną $x = 1; przed rozpoczęciem pętli while, zwiększaj ją o 1 co każdy obrót pętli i użyj jej do modyfikacji parametru name dla poszczególnych grup radiobuttonów:
  1. <input type="radio" name="mecz_<?php echo $x; ?>" value="1"/>0-8 <br />
  2. <input type="radio" name="mecz_<?php echo $x; ?>" value="2"/>9-16 <br />
  3. <input type="radio" name="mecz_<?php echo $x; ?>" value="3"/>17-25 <br />
  4. <input type="radio" name="mecz_<?php echo $x; ?>" value="4"/>Pwyżej 26 <br />


Podczas pierwszego przejścia while wszystkie radiobuttony będą miały nazwę mecz_1, podczas drugiego mecz_2, i tak dalej - i problem rozwiązany.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.