Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php + html] checkbox
Forum PHP.pl > Forum > Przedszkole
Zini
Witam.Dopiero zaczynam zabawę z php.Już na samym początku mam problem.
Wykonuje projekt na bazie połączenia php i mysql'a.
Problem ,który mam wygląda następująco:
W pętli wypisuje wszystkie asortymenty z tabeli (słownika)"Asortymenty"
Następnie zaznaczam kilka asortymentów za pomocą checkboxa i chce je przekazać do następnej strony np. dodajasortyment.php.
Tam ma mi powstać tabela wybranymi asortymentami.Nie wiem jak ten fragment kodu na drugiej stronie ma wyglądać. sad.gif Próbowałem na kilka sposobów i nie udawało mi się.
Nie wiem również jak zliczyć ilość wybranych asortymentów i przypisać ją do zmiennej np.$Iloscpozycji

Tu przedstawiam fragment kodu z pętlą.
  1. include('connect.php');
  2.  $res = mysql_query("select * from asortyment");
  3.  global $max;
  4.  $GLOBALS["max"] = mysql_num_rows($res);
  5.  
  6.  for($i=0;$i<$max;$i++){
  7.  $nazwa = mysql_result($res,$i,"asortyment.Nazwa");
  8.  $klucz = mysql_result($res,$i,"asortyment.Id");
  9.  ?>
  10.  <tr><td width="95%"><? print($nazwa)?> </td><td width="5%"> <input type="checkbox" name="nazwa$i" value=<? echo $klucz ?> /></td></tr>
  11.  <?  
  12.  };


Jak jest ktoś w stanie mi pomóc to byłbym wdzięczny.
Ziels
Jeśli formularzem wysyłasz TYLKO wartości checkboxów to banalnie - count($_POST) w innym wypadku musisz sobie jakoś przefiltrować, np tak:

Formularz:
  1. <input type="text" name="cos_innego_1" />
  2. <input type="text" name="cos_innego_2" />
  3. <input type="checkbox" name="asortyment_1" />
  4. <input type="checkbox" name="asortyment_2" />
  5. <input type="checkbox" name="asortyment_3" />
  6. <input type="checkbox" name="asortyment_4" />
  7. <input type="checkbox" name="asortyment_5" />


Odbieranie danych:
  1. <?php
  2. $i = 0;
  3. $arr = array();
  4. while($i < count($_POST)){
  5.  if(isset($_POST["asortyment_$i"])){
  6.  $arr[] = $_POST["asortyment_$i"];
  7.  }
  8. }
  9. ?>


Tablica $arr zawiera wszystkie pozycje z checkboxów, możesz teraz dać np. count($arr).

Pozdrawiam
kszychu
Prościej: nazywasz checkboxy tak: <input type=checkbox name="nazwa[]" value='....'>
a później w php masz to wszystko w tablicy $_POST['nazwa'] i powyciągasz to zwykłym foreach:
foreach($_POST['nazwa'] as $wartosc) echo $wartosc;
nospor
ja tylko w kwestii formalnej - przenosze
Zini
Dla was to pewnie banalne a dla mnie to pierwsze kroczki.Dzięki za pomoc.Jak będę miał jakieś problemy to się odezwę.Dzięki
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.