0

ユーザー名が使用可能かどうかを確認する機能があるコードがあります。

この関数がどのように機能するかについて混乱しています。

JS:

jQuery(document).ready(function(){
    // binds form submission and fields to the validation engine
    jQuery("#register-form").validationEngine();
});

HTML 入力:

<form action="" id="register-form">
    <input value="" class="validate[required,custom[onlyLetterNumber],maxSize[20],ajax[ajaxNameCallPhp]]] input" type="text" name="username"/>
</form>

これは私のJS関数です:

(function($){
    $.fn.validationEngineLanguage = function(){};
    $.validationEngineLanguage = {
        newLang: function(){
            $.validationEngineLanguage.allRules = {

                "ajaxNameCallPhp": {
                    // remote json service location
                    "url": "ajaxNameCallPhp.php",
                    // error
                    "alertText": "* This name is already taken",
                    // speaks by itself
                    "alertTextLoad": "* Validating, please wait"
                }
            };
        }
    };

    $.validationEngineLanguage.newLang();
})(jQuery);

これが私のajaxNameCallPhp.php機能です:

include ("config.php");
$username = trim(strtolower($_POST['username']));
$username = mysql_escape_string($username);

$query = "SELECT username FROM user WHERE username = '$username' LIMIT 1";
$result = mysql_query($query);
$num = mysql_num_rows($result);

echo $num;
mysql_close();

誰でも私に解決策を教えてもらえますか?

ご清聴ありがとうございました。

ありがとうございました。

4

1 に答える 1

1

これを試して

function UserNameExist(){ 
    $("#msg").html( "* Validating, please wait" );
    $.ajax({
      url: "ajaxNameCallPhp.php",
      type: "POST",
      data: {username : $('#username').val()},
      dataType: "html"
    }).done(function(msg) {
      if(msg > 0){
        $("#msg").html( "* This name is available" );
      }else{
        $("#msg").html( "* This name is already taken" );
      }
    });
   }

#msg は、メッセージを表示する div の ID です

#userName はテキスト ボックスの ID です

その助けを願っています。

于 2012-09-13T06:40:01.720 に答える