Php 在验证中添加ajax函数

Php 在验证中添加ajax函数,php,jquery,ajax,Php,Jquery,Ajax,同样,我正在处理这个表单验证。一切都很好,我喜欢它的工作方式。除非我想添加ajax函数来检查数据库中已经存在的天气用户名。有人能帮忙吗?我不太熟悉ajax和Jquery php由html表单index.php组成: <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { echo " Form submited....!!!! <br/>"; echo '<br/> Username = '.$_POST['usern

同样,我正在处理这个表单验证。一切都很好,我喜欢它的工作方式。除非我想添加ajax函数来检查数据库中已经存在的天气用户名。有人能帮忙吗?我不太熟悉ajax和Jquery

php由html表单index.php组成:

<?php 
if ($_SERVER["REQUEST_METHOD"] == "POST") { 
echo " Form submited....!!!! <br/>";
echo '<br/> Username = '.$_POST['username'];
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
</head>
<body >
<form  method="POST"  action="">
<div class="form-group">
      <label for="txtUserName" class="col-lg-3 control-label">Username :</label>
      <div class="col-lg-9">
        <input type="text" id="txtUserName" name="username" placeholder="Create Username"  >

        <p><small id="elmUserNameError" class="errorMsg"></small></p>
      </div>
   </div>  

   <button type="button" onClick="return check_form(this.form);">Submit</button>  
</form>
<script>

function check_form(form) {

    if(validateForm(form) === true ) {  
    form.submit();
    return true;
    }
}

function validateForm(theForm) {
   with(theForm) {
      return ( 
               isNotEmpty(txtUserName, "Please Create username!", elmUserNameError)
           &&  isUsernameMinMax(txtUserName, 6,10, "Username must between 6 - 10 characters", elmUserNameError)  
           &&  isUpperCase(txtUserName, "Create Username with UPPERCASE!", elmUserNameError)
           &&  isMatching(txtUserName, "Username must be UPPERCASE with number and underscore. No white space allowed", elmUserNameError)
           // problem here......
           &&  isUserExis(txtUserName, "Username already exist!", elmUserNameError)
      );
    return false;
   }
return true;
}

function isNotEmpty(inputElm, errMsg, errElm) {
   var isValid = (inputElm.value.trim() !== "");
   postValidate(isValid, errMsg, errElm, inputElm);
   return isValid;
}

function isUsernameMinMax(inputElm, minLength, maxLength, errMsg, errElm) {
   var inputValue = inputElm.value.trim();
   var isValid = (inputValue.length >= minLength) && (inputValue.length <= maxLength);
   postValidate(isValid, errMsg, errElm, inputElm);
   return isValid;
}

function isUpperCase(inputElm, errMsg, errElm) {
   var isValid = (inputElm.value.trim().match(/^[^a-z]*$/) !== null);
   postValidate(isValid, errMsg, errElm, inputElm);
   return isValid;
}

function isMatching(inputElm, errMsg, errElm) {
   var isValid = (inputElm.value.trim().match(/^\w+$/) !== null);
   postValidate(isValid, errMsg, errElm, inputElm);
   return isValid;
}

function postValidate(isValid, errMsg, errElm, inputElm) {
   if (!isValid) {
      // Show errMsg on errElm, if provided.
      if (errElm !== undefined && errElm !== null
            && errMsg !== undefined && errMsg !== null) {
         errElm.innerHTML = errMsg;
      }
      // Set focus on Input Element for correcting error, if provided.
      if (inputElm !== undefined && inputElm !== null) {
         inputElm.classList.add("errorBox");  // Add class for styling
         inputElm.focus();
      }
   } else {
      // Clear previous error message on errElm, if provided.
      if (errElm !== undefined && errElm !== null) {
         errElm.innerHTML = "";
      }
      if (inputElm !== undefined && inputElm !== null) {
         inputElm.classList.remove("errorBox");
      }
   }
}


</script>
</body>
</html> 
这是要调用的我的php文件,请检查_username.php:

<?php 
include('config.php'); // class and configuration
$users  = new Users($db);

if($_REQUEST) 
{
    $username   = $_REQUEST['username'];

    if ($users->UsernameExist($username) === true) {
    echo 'That Username already exist!';
    }

}   
?>


那么您尝试了哪些代码?我建议对PHP页面调用GET-style AJAX,以返回真/假样式响应。@Twisty我仍在尝试任何可能的方法。还在想。。。。
<?php 
include('config.php'); // class and configuration
$users  = new Users($db);

if($_REQUEST) 
{
    $username   = $_REQUEST['username'];

    if ($users->UsernameExist($username) === true) {
    echo 'That Username already exist!';
    }

}   
?>