Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Wylistowanie zaznaczonych checkbox'ow itp...
Forum PHP.pl > Forum > Przedszkole
kaszanka
Hi,

Mam sobie prosty formularz w którym mam kilka checkbox'ow do wyboru:

  1. ...
  2. <INPUT TYPE="checkbox" NAME="serwis" VALUE="scenografia"> scenografia <br>
  3. <INPUT TYPE="checkbox" NAME="serwis" VALUE="fotograf"> fotograf <br>
  4. <INPUT TYPE="checkbox" NAME="serwis" VALUE="kamera_wideo"> kamera wideo<br>
  5. <INPUT TYPE="checkbox" NAME="serwis" VALUE="tłumacz"> tłumacz<br>
  6. ...

I teraz jak wylistować wszystkie zaznaczone chexbox'y?
Samo w standardowym type="input" robi się: echo $zmienna i gra.
I drugie aby zrobić warunek, że musi zostać zaznaczony minimum 1 checkbox pierw musimy zliczyć wszystkie zaznaczone za pomocą pętli?
Dobrze myślę? jakieś wskazówki? smile.gif
Olimpia_ona
Spróbuj tak:
dla każdego checboxa nadaj inną nazwę:
  1. ...
  2. <INPUT TYPE="checkbox" NAME="serwis1" VALUE="scenografia"> scenografia <br>
  3. <INPUT TYPE="checkbox" NAME="serwis2" VALUE="fotograf"> fotograf <br>
  4. <INPUT TYPE="checkbox" NAME="serwis3" VALUE="kamera_wideo"> kamera wideo<br>
  5. <INPUT TYPE="checkbox" NAME="serwis4" VALUE="tłumacz"> tłumacz<br>
  6. ...


by wylistować zaznaczone zrób tak:
  1. <?php
  2. for($i=1;$i<4;$i++)
  3. {
  4.  if($_POST['serwis'.$i]) echo $_POST['serwis'.$i]."<br />";
  5. }
  6. ?>
kaszanka
Na prawdę nie ma prostrzego rozwiązania?
Np. gdy będę chciał dodać kolejne pola checkbox to będę musiał wprowadzać zmiany również w kodzie PHP w pętli for gdyż zmieni mi się liczba wszystkich checkbox'ów.
MaestroS
Jest.
  1. ...
  2. <INPUT TYPE="checkbox" NAME="serwis[]" VALUE="scenografia"> scenografia <br>
  3. <INPUT TYPE="checkbox" NAME="serwis[]" VALUE="fotograf"> fotograf <br>
  4. <INPUT TYPE="checkbox" NAME="serwis[]" VALUE="kamera_wideo"> kamera wideo<br>
  5. <INPUT TYPE="checkbox" NAME="serwis[]" VALUE="tłumacz"> tłumacz<br>
  6. ...


  1. <?php
  2. $serwis = $_POST['serwis'];
  3.  
  4. for ($i=0; $i<count($serwis); $i++)
  5. {
  6. if (isset($serwis[$i])) {
  7. echo $serwis[$i].'<BR>';
  8. }
  9. }
  10. ?>
kaszanka
#MaestroS o właśnie o coś takiego mi chodziło smile.gif
Tylko teraz próbuje dodać dodatkowy warunek aby sprawdzał czy został zaznaczony chociaż minimum jeden warunek.
MaestroS
Chcesz dodać warunek, który sprawdzi czy został zaznaczony jeden warunek?

Nie pomyliłeś(aś) się przypadkiem?
remik09
  1. <?php
  2. if (!empty($serwis) {
  3. print 'cos';
  4. } else {
  5. print 'cos2'
  6. }
  7. ?>
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.