Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] walidacja pola radio przy wysyłaniu jako POST
Forum PHP.pl > Forum > Przedszkole
!*!
Wszytko mam w jednym pliku, formularz i walidacje...
  1. <?php
  2. ...
  3. $login = stripslashes(htmlspecialchars(trim($_POST[login])));
  4.  
  5. echo '
  6. <label class="flabel" for="login">Login:</label>
  7. <input id="login" type="text" class="fs" name="login" value="'.$_POST[login].'" maxlength="25" />
  8. ';
  9. ?>


po wysłaniu, albo przeładowaniu w input widoczny jest wpisany login, i to wszytko działa w innych polach, nie wiem tylko jak sobie poradzić z radio..


  1. <?php
  2. <label class="flabel" >Płeć:</label>
  3. <input id="kobieta" name="plec" type="radio" '.$_POST[plec].' value="kobieta" />
  4. <label for="kobieta">Kobieta</label>
  5.  
  6. <input id="mezczyzna" name="plec" type="radio" '.$_POST[plec].' value="mezczyzna"/>
  7. <label for="mezczyzna">Mężczyzna</label>
  8. ?>


Jakie powinno być prawidłowe sprawdzenie, zapamiętanie które pole zostało zaznaczone po przeładowaniu/wysłaniu strony?
wipo
  1. <? ?>
  2. <label class="flabel" >Płeć:</label>
  3. <input id="kobieta" name="plec" type="radio" <? if ($_POST[plec]=='kobieta') print ' checked ';?> value="kobieta" />
  4. <label for="kobieta">Kobieta</label>
  5.  
  6. <input id="mezczyzna" name="plec" type="radio" <? if ($_POST[plec]=='mezczyzna') print ' checked ';?> value="mezczyzna"/>
  7. <label for="mezczyzna">Mężczyzna</label>

pola checkbox i radio jak chcesz zaznaczyc to muszą miec parametr checked
piotrekkr
Aby było zgodne z xHTML powinien być atrybut
  1. checked="checked"
w radio. To tak w kwesti ścisłości smile.gif
!*!
To zrobiłem coś takiego:

  1. <?php
  2. $radio = $_POST[plec]; 
  3.  
  4. if (isset($_POST[sprawdz]))
  5. { 
  6. if ($radio =='kobieta') {
  7. $errorradio = "checked";
  8. }
  9.  
  10. if ($radio =='mezczyzna') {
  11. $errorradio2 = "checked";
  12. }
  13.  
  14. if (empty($radio)) { 
  15. $error=1; 
  16. $errorradio3 = "<div class='error'>Wypełnij jakieś pole</div>"; 
  17. }
  18. }
  19.  
  20. echo '
  21.  
  22. <label class="flabel" >Płeć:</label>
  23. <input id="kobieta" name="plec" type="radio" '.$errorradio.' value="kobieta" />
  24. <label for="kobieta">Kobieta</label>
  25.  
  26. <input id="mezczyzna" name="plec" type="radio" '.$errorradio2.' value="mezczyzna"/>
  27. <label for="mezczyzna">Mężczyzna</label>
  28. '.$errorradio3.'
  29.  
  30. ';
  31. }
  32. ?>


Jednak nie jestem przekonany czy takie rozwiązanie jest dobre...
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.