Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML] pytania odnośnie check boxa
Forum PHP.pl > Forum > Przedszkole
lamcpp
Mam problem trochę natury koderskiej/trochę technicznej a mianowicie czy dla poniższego kodu (nie używając tablic w miejsce name) da się w jakikolwiek sposób odczytać wartość zaznaczonych wszystkich checkboxów? Oraz czy poniższe użycie kodu jest prawidłowe (nie mogłem nigdzie w sieci znaleźć informacji czy używanie tego samego "name" dla kilku checkboxów w ramach tego samego pytania jest dozwolone. A jeśli dozwolone to jak odczytać pozniej wartosci w przypadku gdy użytkownik zaznaczył wiecej niż jedną, bo poniższy kod PHP odczyta zawsze tylko jeden zaznaczony checkbox, a nie wszystkie...
  1. <form action="" method="post">
  2. Odpowiedz na pytanie
  3. <input type="checkbox" name="pi" value="hl" />HL
  4. <input type="checkbox" name="pi" value="cs" />CS
  5. <input type="checkbox" name="pi" value="pp" />PP
  6. <input type="checkbox" name="pi" value="ml" />ML
  7. <input type="checkbox" name="pi" value="mg" />MG
  8. <input type="submit" name="wyslij" value="Wyślij" />
  9. </form>
  10.  
  11. <?php
  12. if(isset($_POST['wyslij'])){
  13. echo $_POST['pi'];
  14. }
  15. ?>
kokers
Wystarczy, że w name dla grupy checkboxów dasz
  1. name="pi[]"
i potem traktujesz $_POST['pi'] jak tablicę

czyli zamiast
  1. echo $_POST['pi'];


żeby wyświetlić dajesz
  1. print_r($_POST['pi']);
kalafior122
  1. <?php
  2. while($xx = $_POST["pi"])
  3. {
  4. echo"$xx["pi"]";
  5. }
  6. ?>

nie wiem czy będzie działać ale myśle że tak
ziqzaq
kalafior122 Będzie działać... w założeniu nawet w nieskończoność smile.gif Próbujesz iterować używając while bez ustawienia jakichkolwiek ograniczeń dla tej pętli, i przypisujesz do zmiennej cały czas tę samą tablicę "pi" a nie jej elementy (zakładając rozwiązanie proponowane przez kokers).
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.