這種形式將同時插入一個電子郵件地址和密碼進入我的MySQL數據庫遠程驗證沒有驗證
首先,我嘗試遠程驗證電子郵件,以確保它不存在,同時又有 的PSWD和Pswd2是平等的。
腳本寫入數據庫,但驗證不起作用。我是JQ和Ajax的新手,所以任何幫助都會被讚賞。 謝謝。
FORM:
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
<script src="jquery.validate.js" type="text/javascript"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/additional-methods.min.js"></script>
...
<div data-role="content">
<form id="AddUser" class="ui-body ui-body-a ui-corner-all" data-ajax="true" >
<fieldset>
<div data-role="fieldcontain">
<label for="Email">Email Address:</label>
<input id="Email" type="email" />
<label for="Pswd">Password:</label>
<input id="Pswd" type="password" />
<label for="Pswd2">Confirm Password:</label>
<input id="Pswd2" type="password" />
</div>
<button type="submit" id="submit" data-theme="b" name="submit" value="submit-value">Submit</button>
</fieldset>
</form>
</div>
...
下面
是文檔裏面的JS:
<script>
$(document).ready(function() {
var validator =
$('#AddUser').validate({
rules: {
Pswd: {
required: true,
},
Pswd2: {
required: true,
equalTo: "#Pswd"
},
Email: {
required: true,
email: true,
remote: "process/ValidateEmail.php"
}
},
messages: {
Pswd: {
required: "Provide a password",
},
Pswd2: {
required: "Repeat your password",
equalTo: "Enter the same password as above"
},
Email: {
required: "Not A Valid Email Address",
remote: "already in use"
}
}
}); // end var validator
if (validator)
{
$("#AddUser").submit(function(){
//make Variables
var emailVar =$('input[id=Email]').val();
var pswdVar = $('input[id=Pswd]').val();
var pswdconfirm = $('input[id=Pswd2]').val();
var querystring = "Email="+emailVar+"&Pswd="+pswdVar;
$.post("process/AddUser.php",querystring);
}); //end submit()
}; // end if validator
}); //end ready()
</script>
的驗證文件(ValidateEmail.php)
<?php
$UserEmail = $_POST["Email"];
include "connection.php";
$sqlEmail= mysql_query("Select EmailAddress from USERS where EmailAddress='$UserEmail'");
$EmailCheck=mysql_fetch_array($sqlEmail);
if (mysql_num_rows($EmailCheck) > 0) {
echo json_encode(true);
} else {
echo json_encode(false);
}
?>
解決它:我回到公式,並發現validation.php中的一些錯誤也是如果(驗證)不正確 – JordanR 2012-02-10 15:06:58