Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP] Zapis danch z Checkboxa lub Select
Forum PHP.pl > Forum > Przedszkole
Bielik
Witam

Chce napisać stronkę w której można by zaznaczać które osoby są obecne w pracy (na której zmianie) lub mają jakieś wolne, urlopy, chorobowe itd. Zrobiłem tabelkę gdzie wyświetlane są 3 checkboxy jako wybór zmiany na której pracują oraz pole select aby wybrać np. wolne . Problem w tym że zawsze do zmiennej mam zapisywane dane z pola select niezależnie od tego co jest zaznaczone jako checkbox. W jaki sposób mogę sprawdzić sprawdzić czy checkboxy mają wartość i jeżeli ją posiadają to aby nie została pobierana wartość pusta z pola select i na odwrót.

  1. <td>
  2. <input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="I" /></td>
  3. <td><input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="II" /></td>
  4. <td><input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="III" /></td>
  5. <td>
  6. <select name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>">
  7. <? stan(); ?>
  8. </select>
  9. </td>

  1. function stan()
  2. {
  3. echo '<option value="0"></option>';
  4. echo '<option value="W">W</option>';
  5. echo '<option value="Ut">Ut</option>';
  6. echo '<option value="Uż">Uż</option>';
  7. echo '<option value="Ch">Ch</option>';
  8. echo '<option value="Del">Del</option>';
  9. echo '<option value="UOk">UOk</option>';
  10. }


Z góry dzięki za pomoc
jakub.drag
W taki sposób do tego nie dojdziesz. Nazwy (parametr "name") oraz ID (z html'owego punktu widzenia) muszą być unikalne, a u ciebie wszystkie mają
  1. $kierownik_1

Dlatego do zmiennej zapisuje sie wartość z select - ono jest definiowane na końcu.
Dodatkowo, tutaj:
  1. <input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="I" /></td>
  2. <td><input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="II" /></td>
  3. <td><input type="checkbox" name="<? echo $kierownik_1; ?>" id="<? echo $kierownik_1; ?>" value="III" /></td>

jeśli i tak tylko jeden checkbox ma być wybrany, proponuje zastosować:
  1. <input type="radio">

Mam nadzieję, że pomogłem.
Bielik
Dzięki bardzo za pomoc, potwierdziłeś moje obawy że będę musiał każdej osobie w bazie dodać po jeszcze jednej kolumnie aby zapisać obie wartości a dopiero potem je sprawdzić.
Co do checkboxów to na początku pomyślałem że masz rację były by lepsze, ale powstał problem że ciężko się odznacza checkboxa w przypadku jeżeli ktoś go błędnie zaznaczył (a np nie miał on być na zmianie tylko miał urlop). No chyba że jest jakaś możliwość aby pole select podpiec do tej samej grupy do radio i np ustawienie urlopu usuwa zaznaczenie w radio
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.