Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][js] walidacja formularza
Forum PHP.pl > Forum > Przedszkole
aniulka95
Hej, mam prośbę, potrzebuję się dowiedzieć jak zrobić coś takiego.

Jest pole formularza, w którym trzeba wpisać konkretne słowo, powiedzmy "telefon" i jeżeli wpisze się to słowo przejdzie do jakiejś strony, jak wpisze się coś innego niż "telefon" to wyświetli się błąd.

Jak mogę coś takiego zrobić? wstydnis.gif
roghatt
pobierz wartosc z formularza z tego pola i porownaj ja wtedy do zmiennej pod ktora masz wpisany jakis napis np. telefon. Jesli sa rowne to wtedy formularz zostanie wyslany a jesli nie to wyskoczy komunikat "wpisz telefon".
aniulka95
Nie bardzo rozumiem businesssmiley.png

  1. <form action="podziekowanie.php" method="post">
  2. Wklej link do swojego profilu:
  3. <input type="text" name="adres">
  4. <input type="submit" value="wyślij">
  5. </form>


Chodzi tylko o to żeby w polu formularza można było wpisać adres tylko z jednej domeny, nie chce żadnego spamu dostawać. I żeby tylko wtedy przeszło do strony z podziękowaniami.
Elber
Hmm mogę się mylić bo moja wiedza na temat JS jest znikoma ale coś takiego:

  1. <script type="text/javascript">
  2. function check(form)
  3. {
  4. if(form.adres.value == "")
  5. {
  6. alert('Musisz wpisać swój email!');
  7. return false;
  8. }
  9. else
  10. {
  11. var emailPreg= /^([a-zA-Z0-9_\.\-])+\@+'domena.pl'+$/;
  12. if (!emailPreg.test(form.adres.value))
  13. {
  14. alert('Email pochodzi z niedozwolonej domeny!');
  15. return false;
  16. }
  17. }
  18.  
  19. }
  20.  
  21. <form action="podziekowanie.php" method="post" onsubmit="return check(this);">
  22. Wklej link do swojego profilu:
  23. <input type="text" name="adres">
  24. <input type="submit" value="wyślij">
  25. </form>
aniulka95
Dzięki, prawie działa smile.gif tylko tak jak jest zawsze pokazuje że jest z niedozwolonej domeny sad.gif
Elber
A zmieniłaś tam domena.pl na swoją domenę ?
aniulka95
Tak jest dobrze:
  1. <script type="text/javascript">
  2. function check(form)
  3. {
  4. if(form.adres.value == "")
  5. {
  6. alert('Wpisano niepoprawny adres.');
  7. return false;
  8. }
  9. else
  10. {
  11. if (form.adres.value != 'domena.pl')
  12. {
  13. alert('Wpisano niepoprawny adres.');
  14. return false;
  15. }
  16. }
  17.  
  18. }
  19.  
  20. <form action="podziekowanie.php" method="post" onsubmit="return check(this);">
  21. Wklej link do swojego profilu:
  22. <input type="text" name="adres">
  23. <input type="submit" value="wyślij">
  24. </form>

Tylko w tym przypadku jest to tylko "domena.pl", "*" i "?" nie działają, co zrobić żeby mogło być to np "AsfasaoiASDdomena.pl/JSBdoiabsdajd" jak i "ABIFUssdomena.pl/NNNSJD" - "*domena.pl/*" nie działa
Elber
Myślałem że chodzi o adres e-mail ....

To chyba tak powinno być:

  1. <script type="text/javascript">
  2. function check(form)
  3. {
  4. if(form.adres.value == "")
  5. {
  6. alert('Musisz wpisać adres!');
  7. return false;
  8. }
  9. else
  10. {
  11. if(form.adres.value.indexOf("domena.pl") == -1)
  12. {
  13. alert('Adres pochodzi z niedozwolonej domeny!');
  14. return false;
  15. }
  16. }
  17.  
  18. }
  19.  
  20. <form action="podziekowanie.php" method="post" onsubmit="return check(this);">
  21. Wklej link do swojego profilu:
  22. <input type="text" name="adres" id="adres">
  23. <input type="submit" value="wyślij">
  24. </form>
aniulka95
Tak jak jest, jest ok ale komunikat pojawia się w wyskakującym okienku, niekiedy jest to zablokowane, jak zrobić żeby komunikat pojawiał się na stronie?
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.