我已经询问了 chatgpt,并观看了所有 youtube 视频,我认为代码没有问题,但为什么 ajax 没有发送任何响应。在我的脚本 js 文件中:$('#loginForm').submit(function (e) { e.
我已经询问了 chatgpt,并观看了所有 youtube 视频,我认为代码没有问题,但为什么 ajax 没有发送任何响应。
在我的脚本 js 文件中:
$('#loginForm').submit(function (e) {
e.preventDefault();
// var formData = new FormData(document.getElementById("loginForm"));
$.ajax({
type: "POST",
url: "loginHandle.php",
data: $('#loginForm').serialize(),
// processData: false,
// contentType: false,
dataType: "json",
success: function (response) {
console.log("Response received:", response);
if (response.status == 422) {
$("#errorMessage").text(response.errors);
// document.getElementById("errorMessage").textContent = response.errors;
console.log(response.errors);
} else if (response.status == 200) {
window.location.href = "index.php";
}
},
});
});
在我的 loginHandle php 中:
<?php
require_once("sql_connection.php");
$database = new SQLConnect();
$query = $database->connect();
$error = array();
$status = 400;
if ($_SERVER["REQUEST_METHOD"] == "POST"
&& isset($_POST['login-request']))
{
$email = $_POST['email'];
$checkEmail = $query->prepare("SELECT * FROM `người dùng` WHERE `Email` = :email");
$checkEmail->bindParam(':email', $email);
$checkEmail->execute();
if ($checkEmail->rowCount() == 0) {
$error['email'] = "Email không tồn tại !";
$status = 422;
} else {
$user = $checkEmail->fetch();
if (!password_verify($_POST['password'], $user['Mật khẩu'])) {
$error['password'] = "Mật khẩu không đúng !";
$status = 422;
}
}
if (!$error) {
session_start();
$_SESSION['user_id'] = $user['Mã người dùng'];
// if ($user['Phân loại'] == "Quản trị viên")
// header("location:admin/admin.php");
// else
// header("location:index.php");
$status = 200;
$error = '';
}
// header('Content-Type: application/json');
$response = ['status' => $status, 'errors' => $error];
echo json_encode($response);
}
ajax已经加载了php文件,并且它发送了200 ok,但是响应为空。