<script>
var user = form.name.value;
var password = form.password.value;
var url = "chkname.php?user=" + user + "&password=" + password;
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
var msg = xmlhttp.responseText;
if (msg == '1') {
alert('用戶名或密碼錯誤!!');
form.password.select();
return false;
}
if (msg == "3") {
alert("用戶名被占用,請重新輸入!");
return false;
}
alert('歡迎光臨');
location.reload();
}
};
xmlhttp.send(null);
return false;
</script>
<script src="jquery.js"></script>
<script>
$(document).ready(function() {
$("#submit").click(function() {
if ($("#uname").val() == "" || $("#upas").val() == "") {
alert("用戶名或者密碼不能為空");
return false;
}
$("#showerrormessage").load(
'/index/login',
{uname: $("#uname").val(), upas: $("#upas").val()},
function(data) {
if (data == 1) {
$("#showerrormessage").html('login success!!!');
} else {
$("#showerrormessage").html('login error~~~');
}
}
);
});
});
</script>
<?php
// chkname.php 或 /index/login
$user = $_GET['user'] ?? $_POST['uname'];
$pass = $_GET['password'] ?? $_POST['upas'];
// 數據庫查詢驗證...
$valid = check_user_pass($user, $pass);
if (!$valid) {
echo '1'; // 錯誤
} elseif (user_exists($user)) {
echo '3'; // 被占用
} else {
echo '0'; // 成功(或設置 Session 後返回 1)
}
原生 JS 方案適合無依賴環境,現代項目強烈建議使用 jQuery/Axios/Fetch API 簡化異步處理。