Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sprawdzanie czy checked
Forum PHP.pl > Forum > Przedszkole
crew123
Cześć.
Chciałbym się Was zapytać jak sprawdzić jaki checkbox w pętli while był zaznaczony przed wysłaniem formularza.
Robię walidację i gdy ktoś nie wypełni np: jakiegoś pola pojawia się komunikat a zaznaczone checkboxy znikają. Chciałbym, aby one nie odznaczały się tylko były zaznaczone.
Próbowałem jakieś ifki wstawiać, ale nie wiem jak odczytać z tablicy który jest który
Moja pętla:
  1. while(){
  2. <input type="checkbox" name="opcje[]">
  3. }
!*!
1. sprawdź POST przez var_dump()
2. pod post['opcje'] na pewno kryje się wartość 1 gdy zaznaczony.
b4rt3kk
Dodaj checkboxom kolejne numerki, wtedy będziesz wiedział który jest który.

  1. $=1;
  2. while(){
  3. echo '<input type="checkbox" name="opcje[$i]" ';
  4. if (isset($_POST['opcje'][$i]) echo 'checked';
  5. echo ' />';
  6. $i++;
  7. }
crew123
  1. array(4) { [0]=> string(21) "Badane laboratoryjnie" [1]=> string(17) "Bez konserwantów" [2]=> string(21) "Bez oleju roślinnego" [3]=> string(17) "Uprawa w szklarni" }


Dzięki, działa wszystko +

Przy okazji chciałbym sie spytać o podobny przypadek, tylko z inputem typu "file"
!*!
  1. <?php
  2. echo '<pre>';
  3. echo print_r($_POST);
  4. echo '</pre>';
  5. ?>
  6.  
  7. <form method="post">
  8. <?php
  9. $i=0;
  10. while($i<=10){
  11. echo '<input type="checkbox" name="option['.$i.']"'; if(isset($_POST['option'][$i])){echo 'checked';} echo '/>';
  12. ++$i;
  13. }
  14. ?>
  15. <button type="submit">send</button>
  16. </form>
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.