Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js/AJAX] sprawdzanie formularza danych
Forum PHP.pl > Forum > XML, AJAX > AJAX
yasiek
Witam - mam taki kod javascript
  1. var errfound = false;
  2.  
  3. function error(elem, text) {
  4. if (errfound) return;
  5. window.alert(text);
  6. elem.focus();
  7. errfound = true;
  8. istnieje = true;
  9. }
  10.  
  11. function $(nazwa)
  12. {
  13. return document.getElementById(nazwa);
  14. }
  15.  
  16. function sprawdz()
  17. {
  18. errfound = false;
  19.  
  20. var sprawdz = sprawdz_login($('login').value);
  21.  
  22. if ($('login').value == '')
  23. {
  24. error($('login'),'Należy podać login')
  25. return false;
  26. }
  27. else if(sprawdz_login($('login').value) == false)
  28. {
  29. error($('login'),'Użytkownik z takim loginem już istnieje')
  30. return false;
  31. }
  32. else if ($('pass').value == '')
  33. {
  34. error($('pass'),'Należy podać hasło')
  35. return false;
  36. }
  37. else if ($('name').value == '')
  38. {
  39. error($('name'),'Należy podać imię i nazwisko')
  40. return false;
  41. }
  42. else if ($('email').value == '')
  43. {
  44. error($('email'),'Należy podać adres email')
  45. return false;
  46. }
  47. else if ($('department')[0].selected)
  48. {
  49. error($('department'),'Należy podać kierunek studiów')
  50. return false;
  51. }
  52. else if ($('year')[0].selected)
  53. {
  54. error($('year'),'Należy podać rok studiów')
  55. return false;
  56. }
  57. else if ($('section')[0].selected)
  58. {
  59. error($('section'),'Należy wybrać sekcję koła')
  60. return false;
  61. }
  62. return !errfound;
  63. }
  64.  
  65. function sprawdz_login(login)
  66. {
  67. advAJAX.get(
  68. {
  69. url : "includes/ajaxSprawdz.php?co=login&login="+login,
  70. onInitialization : function(obj)
  71. {
  72. $("dalej").disabled="true";
  73. },
  74. onSuccess : function(obj)
  75. {
  76. if (obj.responseText == "0")
  77. {
  78. $("dalej").disabled="";
  79. return true;
  80. }
  81. else
  82. {
  83. $("dalej").disabled="";
  84. return false;
  85. }
  86. }
  87. });
  88. }


Odpowiada on za sprawdzanie formularza. Wysyłane jest zapytanie do pliku ajaxSprawdz.php, który zwraca 0 jeżeli użytkownika nie ma w bazie, lub 1 kiedy jest (ten plik działa - sprawdzony). Pojawia się taki problem - funkcja sprawdz_login nigdy nie zwraca false... nie wiem czemu. Wygląda na to jakby wszystkie returny w on Success były pomijane. Ma ktoś jakiś pomysł jak to obejść? smile.gif
abc667
bo wg mnie to return nie odnosi się do sprawdz_login()

  1. function sprawdz_login(login)
  2. {
  3. var b;
  4. advAJAX.get(
  5. {
  6. url : "includes/ajaxSprawdz.php?co=login&login="+login,
  7. onInitialization : function(obj)
  8. {
  9. $("dalej").disabled="true";
  10. },
  11. onSuccess : function(obj)
  12. {
  13. if (obj.responseText == "0")
  14. {
  15. $("dalej").disabled="";
  16. b=true;
  17. }
  18. else
  19. {
  20. $("dalej").disabled="";
  21. b=false;
  22. }
  23. }
  24. });
  25. return b;
  26. }


tak spróbuj
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.