Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Formularz - błędy
Forum PHP.pl > Forum > Przedszkole
Komarek
Witam

mam proste a zarazem trudne(dla mnie) pytanie.

Aktualnie mam prosty formularz w htmlu.

Jak to zrobic w php, by przykladowo...


Imie: _______
Nazwisko: _______
E-Mail: _______
Cos innego: ______


Dodawac warunki do kazdego pola

1) Imie nie moze byc puste
2) Nazwisko nie moze byc puste
3) E-Mail nie moze byc pusty i musi byc w formacie maila.

I jezeli formularz wypelnimy w taki sposob:

Imie: ______
Nazwisko: Kowalski
E-Mail: Kowalski.pl


To automatycznie strona sie odswiezy ale pojawi sie komunikat bledowy:

Kod
<div><ul><li>Uzupelnij pole Imie!</li><li>Podaj poprawny adres e-mail!</li></ul></div>


Oczywiscie w zaleznosci od popelnionych bledow ma byc rozna ilosc komunikatow.

I o ta informacje z bledami mi chodzi, jak to zrobic?

Pozdrawiam biggrin.gif
mortus
Pseudokod:
  1. // po naciśnięciu przycisku
  2. if(formularz został wysłany) {
  3. $isValid = true;
  4. $errorMessages = array();
  5. if(pole imie jest puste) {
  6. $isValid = false;
  7. $errorMessages[] = 'Uzupełnij pole Imię!';
  8. }
  9. if(pole nazwisko jest puste) {
  10. $isValid = false;
  11. $errorMessages[] = 'Uzupełnij pole Nazwisko!';
  12. }
  13. if(e_mail jest pusty) {
  14. $isValid = false;
  15. $errorMessages[] = 'Uzupełnij pole E-mail!';
  16. }
  17. if(e_mail jest nieprawidłowy) {
  18. $isValid = false;
  19. $errorMessages[] = 'Podany adres e-mail jest nieprawidłowy!';
  20. }
  21. if($isValid) {
  22. // formularz został prawidłowo wypełniony
  23. // robimy to, co chcemy zrobić
  24. } else {
  25. echo '<div>';
  26. echo '<ul>';
  27. foreach($errorMessages as $errorMessage) {
  28. echo '<li>' . $errorMessage . '</li>';
  29. }
  30. echo '</ul>';
  31. echo '</div>';
  32. // tu możemy wstawić formularz
  33. }
  34. }
Komarek
Wlasnie o to mi chodzilo!
Swietne dzieki biggrin.gif
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.