Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z checkbox, i tablicami
Forum PHP.pl > Forum > PHP
jaguar
Witam, mam swego rodzaju dziwny problem. Mam taki otóż formularz, pobierający dane o sportowcach.Parametrami name jest tablica check[].



  1. <form name="" action="rob.php?go=find_sportsman" method="post">
  2. Zdrowie:<input type="checkbox" name="check[]" /><br /><br />
  3.  
  4. Koncentracja:<input type="checkbox" name="check[]" /> <br />
  5.  
  6. Waga <input type="checkbox" name="check[]" /> <br />
  7.  
  8. Skocznosc <input type="checkbox" name="check[]" /> <br />
  9.  
  10. Szybkosc <input type="checkbox" name="check[]" /><br />
  11.  
  12. Wiek <input type="checkbox" name="check[]" /> <br />
  13.  
  14. Wydolnosc <input type="checkbox" name="check[]" /><br />
  15.  
  16. Wzrost <input type="checkbox" name="check[]" /> <br />
  17.  
  18. <input type="submit" value="Pokaz" />
  19. </form><br />


Mam funkcję umiejetnosci, tworzącą tablicę asoscjacyjną $skills[] z nazwami cech sportowca , indeksowanę od 0 do 7.
W pętli chce utworzyć tablice w której będą zapisywane nazwy zaznaczonych checkbox-ów , np jesli uzytkownik zanaczy checkbox z nazwą check[4], to chce zeby do tablicy $um[$s] została dodana nazwa "szybkosc". itd.
Sęk w tym że po wykonaniu tej procedury, w tablicy um[] nie są zapisywane tylko te nazwy które są zaznaczone lecz są zapisywane kolejne wartosci z tablicy $skills.

Gdzie tkwi błąd?
Jak inaczej jesli nie tak mogę zapisać zanznaczone nazwy check-boxów do tablicy.

Proszę o pomoc.

  1. <?php
  2. function umiejetnosci($check){
  3.  
  4.  $skills[0]="zdrowie";
  5.  $skills[1]="koncentracja";
  6.  $skills[2]="waga"; 
  7.  $skills[3]="skocznosc"; 
  8.  $skills[4]="szybkosc";
  9.  $skills[5]="wiek";
  10.  $skills[6]="wydolnosc";
  11.  $skills[7]="wzrost";
  12.  
  13.  $s=0;
  14.  
  15.  for ($i=0; $i<sizeof($check); $i++){  
  16.  if ($check[$i]=="on"){
  17.  $um[$s]=$skills[$i];
  18. $s=$s+1;
  19.  }//if
  20.  }//for
  21.  return $um;
  22. }//function
  23. ?>
nospor
formularzem wysylają sie tylko zaznaczone checkboxy i sa numerowane pokolei, niezaleznie ktore w kolejnosci byly w formie.
Wstaw dla checkboxow wartosci od 0 do 7 i na podstawie wartosci bedziesz wiedzial ktory jest ktory
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.