您好,我已经创建了一个使用 ajax 方法登录的脚本,我尝试过,但这对我不成功,您可以让我知道为什么我无法使用此方法吗
function login() {
var username = document.getElementById('username').value;
var pass = document.getElementById('pass').value;
if(username == '' && pass == '') {
alert('Fields could not be left empty');
} else {
$.ajax({
type : "POST",
url : "includes/register.php",
data : "command=login&username="+username+"&password="+pass,
datatype : "json",
success : function(data) {
if (data.status == 200) {
alert('Successfull');
var return_data = data.responseText;
document.getElementById('messagearea').innerHTML = return_data;
} else {
alert('Unsuccessful');
}
}
});
}
}
它应该成功运行警报,但我收到警报('不成功'),这意味着状态不等于 200 谁能帮我解决这个问题
这是我的 php 代码
if(isset($_POST['command']) && $_POST['command'] == 'login') {
$username = $_POST['username'];
$pass = $_POST['pass'];
$password = md5($pass);
$check = mysqli_query($connection, "SELECT * FROM users WHERE username = '$username'");
$result = mysqli_num_rows($check);
if($result != 1) {
echo "<div class='message'>Response Successful</div>";
} else {
echo "<div class='message'>Username/Password did not matched</div>";
}
}
最佳答案
datatype
中的
T
应该大写,
$.ajax({
type: "POST",
url: "includes/register.php",
data: "command=login&username=" + username + "&password=" + pass,
dataType: "json",
根据服务器代码,您的数据应如下所示
data: "command=login&username=" + username + "&pass=" + pass,
像这样更改成功处理程序中的代码,
document.getElementById('messagearea').innerHTML = data;
关于javascript - Ajax Post 请求不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37131739/