猿问

为什么我的 AJAX 请求会打印出整个 HTML 代码的页面?

我正在尝试发出 AJAX 请求,将数据发送到 PHP 文件,检查用户名和密码是否正确,返回答案,然后运行确定运行会话的 login.php 文件。


现在,我的 AJAX 请求除了打印登录页面的整个 HTML 代码之外什么都不做。


如果有人知道原因,请告诉我......

(我提前道歉,因为我发布了我所有的 login.js 和 checkLogin.php,我担心如果没有两者的上下文,这个问题可能无法回答)


这是登录.js


$(function() { //Once the document has fully loaded 


    $("#login_form").submit(function(event) {


        //INITIALIZING VARIABLES

        var userName = $("#userName").val();

        var passWord = $("#passWord").val();

        var error = 0;


        event.preventDefault(); //Prevent normal submit action

        $("#userError, #passError").text(""); //Clear the text each time the user clicks submit


        if (userName == "") { //Checking if the username is blank

            $("#userError").text("Please enter your username");

            error = 1;

        }


        if (passWord == "") { //Checking if the password is blank

            $("#passError").text("Please enter your password");

            error = 1;

        }


        //BEGIN Ajax Request

        var $form = $(this),

            term = $form.find("userName, passWord"),

            url = 'checkLogin.php';


        var posting = $.post(url, {username: userName, password: passWord});


        posting.done(function(data) {

            $("#userError").text(posting.responseText);

        });

        //END Ajax Request


        if (error == 0) {

            $("passError").text("Success");

        }

    }); //END submit button click   


    $("#login_form").submit();


});


慕尼黑的夜晚无繁华
浏览 303回答 2
2回答

交互式爱情

您没有在 checkLogin.php 上返回任何内容。你应该试试:$row = mysqli_fetch_assoc($result);if($row) {    echo "User found!";    exit();}我会推荐你,以 json 格式返回文本。通过这种方式,您可以返回更复杂的响应以在您的 js 脚本中使用。例如,在您的 checkLogin.php 中:$row = mysqli_fetch_assoc($result);if($row) {    echo json_encode([        'code' => '1', // code that represent successful        'message' => 'User found!'    ]);    exit();}在你的 login.js 中:posting.done(function(data) {    var response = JSON.parse(data);    if(response.code == '1') {        $("#userError").text(response.message);    }});
随时随地看视频慕课网APP
我要回答