Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] [html] Checkbox i wysyłka formularza
senior.pol
post
Post #1





Grupa: Zarejestrowani
Postów: 158
Pomógł: 0
Dołączył: 10.08.2011

Ostrzeżenie: (0%)
-----


Witam,
Mam problem z checkboxem w formularzu, który domyślnie jest zaznaczony i nie zwraca prawidłowo wartości i błędu.
Docelowo chcę mieć następującą sytuację: Jeśli pole checkbox zostanie odznaczone, to wyświetli się komunikat z błędem i nie pozwoli
wysłać formularza (nie chcę korzystać z opcji blokowanie buttonu submit), jeśli pozostanie nie ruszone, to wyśle wartość np. value.

W html-u wygląda to następująco:
  1. <div class="checkbox">
  2. <label for="warunki">
  3. <input type="hidden" name="warunki" value="Nie">
  4. <input type="checkbox" checked="chcecked" class="form-control-warunki" id="warunki">Akceptuję warunki uczestnictwa *
  5. </label>
  6. </div>


, a w php:

  1. if (isset($warunki) == '') {
  2. echo '<div class="pi-alert-danger fade in"><button type="button" class="pi-close" data-dismiss="alert"><i class="icon-cancel"></i></button><p>Przykładowa treść błędu.</p></div>';
  3. exit();
  4. }


Zna ktoś może rozwiązanie tego problemu?

PS. W internecie przeczytałem już sporo na ten temat, ale rozwiązania dla mojego przypadku nie znalazłem (IMG:style_emoticons/default/wstydnis.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
morthan
post
Post #2





Grupa: Zarejestrowani
Postów: 50
Pomógł: 4
Dołączył: 15.06.2010

Ostrzeżenie: (0%)
-----


Hej,

nie znalazłeś rozwiązania bo to co proponujesz wydaje się niezgodne ze sztuką.
Do blokowania formularza używa się na codzień np. tego http://api.jquery.com/event.preventdefault/.
A odpowiadająć dokładnie na twoje pytanie to przepis na twoją bolączkę, wg. mnie wygląda tak:
1. wyświetl formularz
2. wciśnij submit
3. jQuery (czy innym prototype) blokujesz dalszą wysyłkę
4. za pomocą ajax przesyłasz form do walidacji (czy innych operacji)

4a. jak poszło nie tak podczas walidacji, logujesz błędy do pliku, zanim odeślesz info do przeglądarki i wykonasz pkt. 5 i 6 (to opcja, np. do formularza logowania)

5. jeśli przeszło walidację robisz http://api.jquery.com/submit/
6. a jeśli nie to robisz coś innego, np. wyświetlasz komunikaty błędów (IMG:style_emoticons/default/wink.gif) (użytkownicy lubią wiedzieć co się stało że nie działa)


Tak z regóły działa większość formularzy.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 17:15