Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> formularz - walidacja, mała przeróbka
rydlik
post 30.10.2013, 17:25:31
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 9.10.2011

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


Witam wszystkich, przyszło mi się zmierzyć z następującym problemem.

Mam na stronie formularz:

  1. <form id="contact-frm">
  2.  
  3. <label for="username">login <strong class="asterisk">*</strong></label>
  4. <input name="username" id="username" type="text"><span id="status_login"></span>
  5.  
  6. <label for="mail">adres email <strong class="asterisk">*</strong></label>
  7. <input name="mail" id="mail" type="text"><span id="status_mail"></span>
  8.  
  9. <input type="submit" name="Submit" id="registerButton" value="Zarejestruj" />
  10.  
  11. </form>
  12.  



oraz kod, który odpowiedzialny jest za walidacje:

  1. $(document).ready(function() {
  2.  
  3.  
  4. $("#haslo2, #haslo1").change(function() {
  5. var haslo2 = $("#haslo2").val();
  6. var haslo1 = $("#haslo1").val();
  7. var msgbox = $("#status_haslo");
  8.  
  9. if(haslo1.length > 3) {
  10. if (haslo2 != haslo1){
  11. $("#haslo1").removeClass("green");
  12. $("#haslo1").addClass("read");
  13. $("#haslo2").removeClass("green");
  14. $("#haslo2").addClass("read");
  15. msgbox.html('<font color="Red"> hasła różne </font> ');
  16. $("#status_haslo1").html('');
  17. } else {
  18. $("#haslo1").removeClass("red");
  19. $("#haslo1").addClass("green");
  20. $("#haslo2").removeClass("red");
  21. $("#haslo2").addClass("green");
  22. msgbox.html('<img src="accept.png" align="absmiddle"> <font color="Green"> hasła poprawne </font> ');
  23. $("#status_haslo1").html('');
  24. }
  25. } else {
  26. $("#status_haslo1").html('<font color="#cc0000">hasło za krótke</font>');
  27. }
  28. });
  29.  
  30.  
  31. $("#mail").change(function() {
  32. var msgbox = $("#status_mail");
  33. var mail = $("#mail").val();
  34. var regex = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
  35. var litPatt = /^[2-9]{5,5}$/;
  36. var odp = regex.test(mail);
  37.  
  38. if (!odp) {
  39. msgbox.html('<font color="Red"> email nie poprawny </font>');
  40. } else {
  41. $("#status_mail").html('<img src="loader.gif" align="absmiddle">&nbsp;sprawdzanie dostępności...');
  42.  
  43. $.ajax({
  44. type: "POST",
  45. url: "check_username.php",
  46. data: "mail="+ mail,
  47. success: function(msg){
  48.  
  49. $("#status_mail").ajaxComplete(function(event, request){
  50. var d = msg;
  51. var str=msg.substr(0, 2);
  52.  
  53. if(str == 'OK') {
  54. $("#mail").removeClass("red");
  55. $("#mail").addClass("green");
  56. msgbox.html('<img src="accept.png" align="absmiddle"> <font color="Green"> email poprawny </font>');
  57.  
  58. } else {
  59. $("#mail").removeClass("green");
  60. $("#mail").addClass("red");
  61. msgbox.html('<font color="Red"> email jest już zajęty</font>');
  62. }
  63. });
  64. }
  65. });
  66.  
  67.  
  68. }
  69. });
  70.  
  71. $("#username").change(function() {
  72. var username = $("#username").val();
  73. var msgbox = $("#status_login");
  74.  
  75.  
  76. if(username.length > 3) {
  77. $("#status_login").html('<img src="loader.gif" align="absmiddle">&nbsp;sprawdzanie dostępności...');
  78.  
  79. $.ajax({
  80. type: "POST",
  81. url: "check_username.php",
  82. data: "username="+ username,
  83. success: function(msg){
  84.  
  85. $("#status_login").ajaxComplete(function(event, request){
  86. var d = msg;
  87. var str=msg.substr(0, 2);
  88.  
  89. if(str == 'OK') {
  90. $("#username").removeClass("red");
  91. $("#username").addClass("green");
  92. msgbox.html('<img src="accept.png" align="absmiddle"> <font color="Green"> dostępny </font> ');
  93.  
  94. } else {
  95. $("#username").removeClass("green");
  96. $("#username").addClass("red");
  97. msgbox.html(msg);
  98. //registerButton.style.display = "block";
  99. }
  100. });
  101. }
  102. });
  103.  
  104.  
  105.  
  106.  
  107. } else {
  108. $("#username").addClass("red");
  109. $("#status_login").html('<font color="#cc0000">login za krótki</font>');
  110. }
  111.  
  112.  
  113.  
  114. return false;
  115. });
  116.  
  117. });
  118.  



moja gorąca prośba: co dopisać i jak to zmodyfikować aby jeśli login i mail bedą juz po walidacji czyli poprawne, po wciśnięciu "submit" formularza strona się nie przeładowała a pola mail i login zapisały się w bazie
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:10