Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js] Zabezpieczenie przed wyslaniem pustego formularz
Kemot1000
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


mam formularz w ktorym sa 2 przyciski i 2 pola tekstowe chcialbym zeby niemzliwym bylo wyslanie formularza ktory nie zawieralby tekstu we wszystkich. Tyle mam:

  1. <script language="javascript" type="text/javascript">
  2. <!--
  3. function verify(Form1)
  4. {
  5. for (i = 0; i < Form1.length; i++)
  6. {
  7. var field = Form1.elements[i];
  8. if (field.type == "text" || field.type == "textarea" && field.value == "")
  9. {
  10. return false;
  11. }
  12. }
  13. return true;
  14. }
  15. -->
  16. <form name="Form1" method=post>
  17. <input type="text" name=NewText size=4 maxlength=4>
  18. <input type="button" value="Button1" name=button1 onClick="return check1();" />
  19. <input type=\"text\" name=\"NewText1\">
  20. <input type="button" value="Button2" name=button2 onClick="return check2();">
  21. </form>
  22.  
  23. <script language=javascript TYPE="text/javascript">
  24. <!--
  25.  
  26. function check1()
  27. { if (verify(Form1))
  28. {
  29. document.Form1.action = "http://anypage.com";
  30. document.Form1.target = "_blank";
  31. document.Form1.submit();
  32. return true;}
  33. else
  34. {
  35. alert("Please fill out all obligatory fields");
  36. return false;
  37. }
  38. }
  39.  
  40. function check2()
  41. { if (verify(Form1))
  42. {
  43. document.Form1.action = "test.php";
  44. document.Form1.target = "_blank";
  45. document.Form1.submit();
  46. return true; }
  47. else
  48. {
  49. alert("Please fill out all obligatory fields");
  50. return false;
  51. }
  52. }
  53. --> </script>



i za kazdym razem jak wysylam dostaje alert ze pola sa nie wypelnione nie wazne czy sa czy nie? ktos wie moze gdzie jest blad o czym zapomnialem??
Go to the top of the page
+Quote Post
lopik
post
Post #2





Grupa: Zarejestrowani
Postów: 340
Pomógł: 0
Dołączył: 7.07.2006

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


  1. <script language="javascript" type="text/javascript">
  2. <!--
  3. function verify(f, b)
  4. {
  5. if (b.value == "button1" && f.text1.value == "")
  6. {
  7. alert("Nie wypelnione pola!");
  8. }
  9. else if (b.value == "button2" && f.text2.value == "" )
  10. {
  11. alert("Nie wypelnione pola!");
  12. }
  13. }
  14. -->
  15. </head>
  16.  
  17.  
  18.  
  19. <form method=post>
  20.  
  21. <input type="text" name="text1" size="4" maxlength="4" />
  22. <input type="button" value="button1" name=button1 onClick="verify(this.form, this)" />
  23. <input type="text" name="text2">
  24. <input type="button" value="button2" name=button2 onClick="verify(this.form, this)">
  25.  
  26. </form>


O coś takiego Ci chodzi ?


--------------------
w3c & c++
Go to the top of the page
+Quote Post
Kemot1000
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


Nie do konca bo tak tez probowalem ale pod onClick musi byc funkcja ktora wykona przekierowanie na nastepna strone a w tym wypadku po kliknieciu na przycisk nastepuje tylko sprawdzenie warunku? chyba ze zle to wprowadzilem
Go to the top of the page
+Quote Post
Cienki1980
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


To zrób tak, że jeżeli funkcja weryfikująca zwróci true zatwierdź formę.


--------------------
404
Go to the top of the page
+Quote Post
Kemot1000
post
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


Javascript to nie bardzo moja dzialka? Mozesz to troche uscislic Cienki1980
Go to the top of the page
+Quote Post
lopik
post
Post #6





Grupa: Zarejestrowani
Postów: 340
Pomógł: 0
Dołączył: 7.07.2006

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


  1. <script language="javascript" type="text/javascript">
  2. <!--
  3. function verify(f, b)
  4. {
  5. if (b.value == "button1" && f.text1.value == "")
  6. {
  7. alert("Nie wypelnione pola!");
  8. }
  9. else if (b.value == "button2" && f.text2.value == "" )
  10. {
  11. alert("Nie wypelnione pola!");
  12. }
  13. else
  14. {
  15. f.submit();
  16. return true;
  17. }
  18. }
  19. -->


Takie coś ?


--------------------
w3c & c++
Go to the top of the page
+Quote Post
Kemot1000
post
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


ten sam problem funkcja jest sprawdzana ale submit jest tylko dla 1 przycisku:

bez funkcji sprawdzanie to wygladalo tak:

  1. <form name="Form1" method=post>
  2. <input type="text" name=NewText size=4 maxlength=4>
  3. <input type="button" value="Button1" name=button1 onClick="return OnButton1();" />
  4. <input type=\"text\" name=\"NewText1\">
  5. <input type="button" value="Button2" name=button2 onClick="return OnButton2();">
  6. </form>
  7.  
  8.  
  9. <script language=javascript TYPE="text/javascript">
  10. <!--
  11. function OnButton1()
  12. {
  13. document.Form1.action = "http://anypage.com";
  14. document.Form1.target = "_blank";
  15. document.Form1.submit();
  16. return true;
  17. }
  18.  
  19. function OnButton2()
  20. {
  21. document.Form1.action = "test.php";
  22. document.Form1.target = "_blank";
  23. document.Form1.submit();
  24. return true;
  25. }
  26. </script>


no i w miejsce OnClick= "return OnButton1();" it "return OnButton2();" musza byc jakies funkcje ktore by sprawdzaly formularz i jezeli prawda to wykonywaly
{
document.Form1.action = "http://anypage.com";
document.Form1.target = "_blank";
document.Form1.submit();
return true;
}

nie jestem pewny czy dobrze mysle

Ten post edytował Kemot1000 4.02.2007, 22:48:02
Go to the top of the page
+Quote Post
Cienki1980
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


A dlaczego musisz mieć tam dwa przyciski questionmark.gif
Nie może być jeden przycisk SUBMIT po kliknięciu ktorego wykona się funkcja sprawdzająca poprawność wpisów i w przypadku gdy wszystko będzie OK zatwierdzi formę ?


--------------------
404
Go to the top of the page
+Quote Post
Kemot1000
post
Post #9





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


Poniewaz jeden przycisk odsyla na strone gdzie dodawane jest konto a drugi otwiera strone z ktorej wysyslane jest powiadomienie o danych jakie zostaly uzyte do stworzenia tego konta. I niestety ta stronka ktora konta dodaje jest lub bywa zawodna i czasem trzeba 2 razy probowac nim sie uda stworzyc nowe konto. Wiec musi byc rozdzielone tworzenie konta i wysylanie wiadomosci
Go to the top of the page
+Quote Post
lopik
post
Post #10





Grupa: Zarejestrowani
Postów: 340
Pomógł: 0
Dołączył: 7.07.2006

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


Jakoś nie mogę sobie czegoś takiego wyobrazić. :?

A dwóch formularzy nie możesz ?


--------------------
w3c & c++
Go to the top of the page
+Quote Post
Kemot1000
post
Post #11





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 3.02.2007

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


Dwa formularze moga byc pod warunkiem ze plik test.php ktory jest pod drugim przyciskiem moze zebrac dane z 2 formularzy. Zrobilem to na jednym formularzu bo nie wiedzialem jak zebrac dane z 2 formularzy. Jest jakis sposob? bo z jednego to $_POST[''] zalatwia sprawe
Go to the top of the page
+Quote Post

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: 21.08.2025 - 05:59