Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][HTML][AJAX]walidacja formularza
Forum PHP.pl > Forum > Przedszkole
lol99
witam
proszę o pomoc jak za pomocą tego skryptu sprawdzić czy nic jest wolny?
  1. $nick=$_GET['login'];
  2. $zapytanie=mysql_query("SELECT nick FROM users WHERE nick='$nick'");
  3. $ile=mysql_num_rows($zapytanie);
  4. if($ile>0)
  5. {echo '{FALSE}';}
  6. else { echo '{TRUE}';}

  1. $(document).ready(function(){
  2. $("#rejestracja").validate({
  3. rules: {
  4. login: {
  5. required: true,
  6. minlength: 4
  7. },
  8. haslo1: {
  9. required: true,
  10. minlength: 5
  11. },
  12. haslo2: {
  13. required: true,
  14. equalTo: "#haslo1"
  15. },
  16. email: {
  17. required: true,
  18. email: true
  19. }
  20. },
  21. messages: {
  22. login:{
  23. required: "Proszę wpisać login!",
  24. minlength: "Minimalne długość to 4 znaki!"
  25. },
  26. haslo1:{
  27. required: "Proszę wpisać hasło",
  28. minlength: "Minimalna długość to 5 znaków!"
  29. },
  30. haslo2:{
  31. required: "Proszę wpisać hasło",
  32. equalTo: "Hasła są różne!"
  33. },
  34. email:{
  35. required: "Wprowadź adres e-mail",
  36. email: "Wprowadź poprawny adres e-mail"
  37. }
  38. },
  39. success: function(label) {
  40. label.html(" ").addClass("sprawdzony");
  41. }
  42.  
  43. });
  44. });
bemol
skoro używasz jQuery, to w tej funkcji js dopisz
Kod
success: function(label) {
label.html(" ").addClass("sprawdzony");
$.post('skrypt.php',{nick: zmienna_z_loginem},function(data) {
if (data == 1) {
$('cos_gdzies_do_wyswietlenia').text('Podany nick jest wolny');
} else {
$('cos_gdzies_do_wyswietlenia').text('Podany nick jest zajety');
}
});
}

skrypt.php to ten skrypt, który podałeś. zmień tylko z $_GET na $_POST, albo w kodzie którym podałem zmien na get lub podaj skrypt.php?nick=zmienna_z_loginem
lol99
co robię źle?

plik user.php
  1. include 'config.php';
  2. @mysql_connect($mysql_host, $mysql_user, $mysql_pass);
  3. @mysql_select_db($mysql_db);
  4. @mysql_query('SET CHARSET utf8');
  5. $nick=$_POST['login'];
  6. $zapytanie=mysql_query("SELECT nick FROM users WHERE nick='$nick'");
  7. $ile=mysql_num_rows($zapytanie);
  8. if($ile>0)
  9. {echo '{"success":false,"error":"username_already_exists"}';}
  10. else { echo '{"success":true}';}



  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Rejestracja</title>
  6. <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
  7. <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script>
  8. <link rel="stylesheet" href="styles.css" />
  9. <script type="text/javascript">
  10. $(document).ready(function(){
  11. $("#rejestracja").validate({
  12. rules: {
  13. login: {
  14. required: true,
  15. minlength: 4
  16. },
  17. haslo1: {
  18. required: true,
  19. minlength: 5
  20. },
  21. haslo2: {
  22. required: true,
  23. equalTo: "#haslo1"
  24. },
  25. email: {
  26. required: true,
  27. email: true
  28. }
  29. },
  30. messages: {
  31. login:{
  32. required: "Proszę wpisać login!",
  33. minlength: "Minimalne długość to 4 znaki!"
  34. },
  35. haslo1:{
  36. required: "Proszę wpisać hasło",
  37. minlength: "Minimalna długość to 5 znaków!"
  38. },
  39. haslo2:{
  40. required: "Proszę wpisać hasło",
  41. equalTo: "Hasła są różne!"
  42. },
  43. email:{
  44. required: "Wprowadź adres e-mail",
  45. email: "Wprowadź poprawny adres e-mail"
  46. }
  47. },
  48. success: function(label) {
  49. label.html(" ").addClass("sprawdzony");
  50. $.post('user.php',{login: zmienna_z_loginem},function(data) {
  51. if (data == 1) {
  52. $('cos_gdzies_do_wyswietlenia').text('Podany nick jest wolny');
  53. } else {
  54. $('cos_gdzies_do_wyswietlenia').text('Podany nick jest zajety');
  55. }
  56. });
  57. }
  58.  
  59. });
  60. });
  61. </script>
  62.  
  63. </head>
  64. <body>
  65.  
  66. <form id="rejestracja" action="" method="post">
  67. <p>
  68. <label for="login">Login:</label>
  69. <input type="text" name="login" id="login" />
  70. </p>
  71. <p>
  72. <label for="haslo1">Hasło:</label>
  73. <input type="password" name="haslo1" id="haslo1" />
  74. </p>
  75. <p>
  76. <label for="haslo2">Powtórz hasło:</label>
  77. <input type="password" name="haslo2" id="haslo2" />
  78. </p>
  79. <p>
  80. <label for="email">Email:</label>
  81. <input type="text" name="email" id="email" />
  82. </p>
  83. <p>
  84. <input name="dodaj" class="wyslij" type="submit" value="Dodaj" />
  85. </p>
  86. </form>
  87.  
  88. </body>
  89. </html>


pomoże ktoś?

pomoże ktoś?
jupiter
Zwracaj samo '1' albo '0' w pliku user.php
  1. include 'config.php';
  2. @mysql_connect($mysql_host, $mysql_user, $mysql_pass);
  3. @mysql_select_db($mysql_db);
  4. @mysql_query('SET CHARSET utf8');
  5. $nick=$_POST['login'];
  6. $zapytanie=mysql_query("SELECT nick FROM users WHERE nick='$nick'");
  7. $ile=mysql_num_rows($zapytanie);
  8. if($ile>0)
  9. {echo '0';}
  10. else { echo '1';}

PS. i analizuj kod który ludzie Ci podają smile.gif
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.