jQuery的文件AJAX驗證工作不
$(document).ready(function() {
$('input.textinput3').each(function() {
$(this).rules("add",
{
required: true,
minlength: 3,
remote: "report/user_check.php",
messages: {
required: "Type Serial number!",
minlength: jQuery.format("Please, at least {0} character are necessary"),
remote: jQuery.format("{0} is already taken"),
// remote: 'This email address has already been used'
}
})
});
// initialize the validator
$('form.warregform').validate();
});
我的PHP文件
include("db.class1.php");
if (isset($_POST['wproserial'])) {
$db = new mysqldb();
$db->select_db();
for ($i=0;$i<count($_POST['wproserial']);$i++) {
{
$wproserial = $_POST['wproserial'][$i];
}
}
$query = "SELECT EXISTS (SELECT * FROM products WHERE SerailNo='mysql_real_escape_string($wproserial)')";
if($db->num_rows($db->query($query)) < 1) {
return true;
}else {
return false;
}
}
我無法檢查與現有數據庫驗證,該序列號。已經註冊或沒有註冊。每個輸入數據都顯示消息「已被採用」。所以我不能提交。我的序列號輸入字段是無限的。
我的HTML文件
default show
<input name="wproserial[]" id="wproserial0" type="text" value="" class="textinput3 " autocomplete="off">
After Add
<input name="wproserial[]'+i+'" id="wproserial'+i+'" type="text" value="" class="textinput3">
SELECT EXISTS總是會返回一行,你需要重新考慮查詢或如果 – Dale
和查詢壞了,你不能有PHP函數'mysql_real_escape_String'在SQL中沒有逃脫它,它將直接作爲'SELECT ...'mysql_real_escape_String()'...' – Dale
一如既往:不推薦使用'mysql_real_escape_string',否則整個mysql_ *'擴展名將被棄用,並且將被刪除。棄用程序已持續多年。 PHP的文檔頁面在函數頁面上有一個_big紅色警告框,告訴你不再使用這些函數。只是** RTFM ** –