Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JQUERY][AJAX][MYSQL][PHP] Rejestracja a sprawdzanie danych
Forum PHP.pl > Forum > XML, AJAX
pjamalia
Witam ponieżej umieszczę część kodu:

plik: index.php

  1. <form name="userregistration" id="userregistration" action="">
  2. <legend>Formularz rejestracji użytkownika</legend>
  3. <tr>
  4. <td>
  5. Nickname:
  6. </td>
  7. <td>
  8. <input type="text" name="nickname" id="nickname"/><span id="nickname_error"></span>
  9. </td>
  10. </tr>
  11. <td>
  12.  
  13. </td>
  14. <td>
  15. <input type="button" name="register" id="register" value="rejestruj"/>
  16. </td>
  17. </tr>
  18. </form>


plik: validate.js, w zasadzie to jego cząstka

Podałem ostatnią część walidacji wypłnienia formularza, w tej części chcę strzelić parametr do pliku validate.php poprzez AJAX jak poniżej.
Po klinięciu buttona #register nic się nie dzieje, nie ma błędów, poprostu nic, null. Chciałbym w tagu span wywołać nazwę nickname po pomyślnym pobraniu
loginu w validate.php. Zapytanie w tym pliku jest poprawne, wszystko jest wporządku

  1. // after correct validation show submit button
  2. if(error_counter == 7)
  3. {
  4. $("#register").show("slow",function()
  5. {
  6. error_counter = 0;
  7. $("#register").click(function()
  8. {
  9.  
  10. $.ajax(
  11. {
  12. type: "GET",
  13. data:"nickname="+$("#nickname").val(),
  14. url:"validation.php",
  15. success: function(msg)
  16. {
  17. $("#nickname_error").html(msg)
  18. }
  19.  
  20. });
  21. });
  22. });
  23.  
  24. }


plik: validate.php

  1. <?php
  2. $counter = 0;
  3. $nickname = null;
  4.  
  5. function usernameCheck($nickname)
  6. {
  7.  
  8. $connect = mysql_connect("localhost","root","vertrigo") or die ('Polaczenie z baza nie powiodlo sie !!!');
  9. $db = mysql_select_db("mbdb", $connect) or die('Wybor bazy nie powiodl sie !!!');
  10. $SQL = "
  11. SELECT
  12. PAS.NICKNAME
  13. FROM
  14. TABELKA PAS
  15. WHERE
  16. PAS.ID_USR = '$nickname'
  17.  
  18. ";
  19. $RES = mysql_query($SQL);
  20. while($row = mysql_fetch_array($RES))
  21. {
  22. $nickname[] = $row['NICKNAME'];
  23. $counter++;
  24. }
  25. if($counter>0)
  26. {
  27. return $nickname[0];
  28. }
  29. else
  30. {
  31. return null;
  32. }
  33. }
  34.  
  35.  
  36. echo usernameCheck($_GET['nickname'];
  37. ?>


Starałem się jak mogłem wkleić kod i opisać problem. Przypominam chcę wyświetlić w
  1. <span id="nickname_error"></span>
nazwę usera pobranego po wykonaniu zapytania przez AJAX do pliku validate.php.

pozdrawiam
cudny
Zamiast $("#register").click(function() daj:
Kod
$("#userregistration").submit(function() {
// TUTAJ TWÓJ KOD

return false; // BARDZO WAŻNE JEST ABY RETURN FALSE BYŁ DOKŁADNIE W TYM MIEJSCU - NA SAMYM KOŃCU
});


Po prostu po kliknięciu w formularz strona Ci się przeładowywała.
pjamalia
Poprawiłem jak zasugerowałeś, w zasadzie efetk ten sam, login nie pokazuje się:

  1. // after correct validation show submit button
  2. if(error_counter == 7)
  3. {
  4. $("#register").show("slow",function()
  5. {
  6. error_counter = 0;
  7. $("#userregistration").submit(function()
  8. {
  9.  
  10. $.ajax(
  11. {
  12. type: "GET",
  13. data:"nickname="+$("#nickname").val(),
  14. url:"validation.php",
  15. success: function(msg)
  16. {
  17. $("#nickname_error").html(msg);
  18. }
  19.  
  20. });
  21. return false; // BARDZO WAŻNE JEST ABY RETURN FALSE BYŁ DOKŁADNIE W TYM MIEJSCU - NA SAMYM KOŃCU
  22. });
  23. });
  24.  
  25. }
cudny
Ale zapytanie ajax idzie ? Czy konsola czysta ?
pjamalia
Jak mogę to sprawdzićquestionmark.gif?

Chciałbym przechwycić właśnie ewentualne nie powodzenia zapytania w AJAX przy wysyłaniu i odbieraniu. Raczkuję w tym temacie, nie proszę o całe rozwiązanie tylko o podpowiedzi, rozwiązanie małego kawałka nad którym siedzę i siedzę...


pozdrawiam
cudny
Zainstaluj sobię w firefox rozszerzenie firebug, tam bedziesz miał wszytko co trzeba
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.