Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: walidacj
Forum PHP.pl > Forum > Przedszkole
podziak
Witam!!!

nie znalazlem mnie interesujacej odpowiedzi. Chodzi o to ze mam formularz z polami do wypelnienia. Chcialbym sprawdzic ich poprawnosc a jesli ktores pole nie zostalo wypelnione lub zostalo wypelnione blednie byl generowany ponownie formularz. TU zaczyna sie problem bo chcialbym ultwic obsluge formularza i po bledch zwracalo wartosci poprawne czyli wypelniony formularz z pustym miejscem gdzie w formularzu gdzie nastapil blad i komunikatem obok.
przykla
imie
nazwisko
email
i mam tak
aaa
bbb
ccc (blad brak @)
czyli wyswietla mi zwrocony formularz
aaa
bbb
puste pole obok inputa gwiazdka i napis porsze wpisac poprawny adres e-mail.

Mysle ze to chyba juz jest jasne.
Bede wdzieczny za wszelkie artykuly dotyczace takiej walidacji oraz pomyslow rozwiazania tego. Wiem ze mozna walidowac poprzez JS, ale to chyba nie jest zbyt wygodne i nie wyglada obecnie zbyt profesjonalnie.
Prosze o wszelkie rozwiazania.
Pigula
za pomoca php mozesz zrobic to tak ze jak dane sa bledne to zmienna usuwasz a reszte zwracasz spowrotem do formularz i do value sie przypisuje (tak mi sie wydaje dawno juz tego nie robilem)
snipe
Ja to zrobilem tak:

  1. <?
  2. $form = "Imie: <input type=text name=imie value=$_POST[imie]><br />
  3. Nazwisko: <input type=text name=nazwisko value=$_POST[nazwisko]><br />
  4. E-mail: <input type=text name=email value=$_POST[email]><br />";
  5.  
  6. if(isset($_POST[imie]) && isset($_POST[nazwisko]) && isset($_POST[email]))
  7. {
  8. if(!empty($_POST[imie]) && !empty($_POST[nazwisko]) && !empty($_POST[email]))
  9. {
  10. if(!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+.[A-Z]{2,6}$", $email))
  11. {
  12. echo '<form name=formularz method=post action=index.php>';
  13. echo '<b>Wpisano niepoprawny email</b><br />';
  14. echo $form;
  15. echo '<input type=submit value=Dodaj></form>';
  16. };
  17. echo 'Dodano nowy rekord!!!';
  18. } else 
  19. {
  20. echo '<form name=formularz method=post action=index.php>';
  21. if(empty($_POST[imie]))
  22. {
  23. echo '<b>Nie podałeś imienia!!!</b><br />';
  24. echo $form;
  25.  
  26. }
  27. elseif(empty($_POST[nazwisko]))
  28. { 
  29. echo '<b>Nie podałeś nazwiska!!!</b><br />';
  30. echo $form;
  31. }
  32. elseif(empty($_POST[email]))
  33. {
  34. echo '<b>Nie podałeś maila!!!</b><br />';
  35. echo $form;
  36. }
  37. echo '<input type=submit value=Dodaj></form>';
  38. }
  39. } else echo '<form name=formularz method=post action=index.php>'.$form.'<input type=submit value=Dodaj></form>';
  40. ?>


Tylko jakos nie za bardzo mi sie pdooba ten sposob dry.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.