0
我已經做了所有的驗證,並顯示一條錯誤或確認消息。現在最後要說的是,我想從數據庫中檢查用戶名的可用性,所以我需要查詢我的服務器。如何使Ajax請求只有用戶名是免費的,
var b = $("#input_username_holder").val();
if (b != "Username" && b != "" && b.length > 6 && b.length < 17) {
$.ajax({
type: "POST",
url: "check_username.php",
data: "b=" + b,
}).done(function(msg) {
$("#username_result").html(msg);
});
}
現在,此代碼很適合顯示發生的任何錯誤。我想打一個Ajax請求,但請求只能進行用戶名是否可用:
if (fullname valid) {
if (username is available) {
$.ajax({
type: "POST",
url: "register.php",
data: "a=" + a + "&b=" + b + "&c=" + c + "&d=" + d,
}).done(function(msg) {
$("#register_box").html(msg);
});
}
}
我總是意識到威脅,用JS該驗證可畸形並且可能執行SQL注入整個數據庫,所以我總是盡我所能保護我的網站免受任何黑客攻擊。我做這樣的事情
$user_email = filter_input(INPUT_POST, 'usr_email', FILTER_SANITIZE_STRING);
,此外...我通過這個函數傳遞值..
function filter($data) {
$data = trim(htmlentities(strip_tags($data)));
if (get_magic_quotes_gpc())
$data = stripslashes($data);
$data = mysql_real_escape_string($data);
return $data;
}
這是足夠足夠,或者你最能表明我的東西的安全...
你**從不**只用JavaScript進行驗證。永遠。我根本不需要訪問你的頁面來發送你的PHP文件一個'POST'請求,這個請求可能是畸形的,並且可能在你的整個數據庫上執行SQL注入。 – Blender 2011-12-16 17:18:41