簡體   English   中英

如何在HTML中看到使用AJAX的動態JSON響應?

[英]How can I see dynamic JSON response with AJAX in HTML?

對於練習我只用一個用戶(沒有數據庫)制作登錄表單,現在我遇到了問題因為我不知道如何從帶有AJAX的JSON獲取錯誤消息以顯示在結果中 (我在螢火蟲中看到它們)。 我不知道哪里出錯了。 這是我的scriptLogin.php代碼:

<?php

const USERNAME = 'user1';
const EMAIL = 'me@me.me';
const PASSWORD = 'pass1';


if (!empty($_POST)) {
    $username = null;
    $email = null;
    $password = null;


    if (isset($_POST['contactUser'])) {
        $username = (string)$_POST['contactUser'];
    }

    if (isset($_POST['contactPass'])) {
        $password = (string)$_POST['contactPass'];
    }

    if (isset($_POST['contactEmail'])) {
        $email = (string)$_POST['contactEmail'];
    }

    $errMessage = [];

    if ($username != USERNAME || $email != EMAIL || $password != PASSWORD ) {
        $errMessage['contactInput'] = 'Please enter valid user,mail and pass!';
    }

    if (empty($username)) {
        $errMessage ['contactUser'] = 'Please enter a username!';
    }

    if (empty($email)) {
        $errMessage ['contactEmail'] = 'Please enter your E-Mail!';
    }

    if (empty($password)) {
        $errMessage ['contactPass'] = 'Please enter a password!';
    }



    if (!empty($errMessage)) {
        http_response_code(400);
    } else {
        http_response_code(200);
    }

    header('Content-Type: application/json');

    echo json_encode($errMessage);

    exit();
}?>

這是我的login.html代碼

<div id="result"></div>
<form method="post" action="loginScript.php" id="myForm" >
        <input type="text" name="contactUser" id="username" placeholder="Username" />
        <input type="text" name="contactEmail" id="email" placeholder="Email" /> 
        <input type="password" name="contactPass" id="password" placeholder="Password" />        
        <input type="submit" id="btnLogin" value="Login" />
</form>

這是我的AJAX代碼

$(document).ready(function() {
        $('#myForm').submit(function(){
            $.ajax({
                type: "POST",
                url: "loginScript.php",
                dataType:'json',
                data: $('#myForm').serialize(),

                success: function (data) {
                    $("#result").html("Success - LogIn !");
                },
                error: function(){
                    $.getJSON("loginScript.php",
                        function(json)
                        {
                            var output = json.contactInput;
                            output += json.contactUser;
                            output += json.contactEmail;
                            output += json.contactPass;

                            $("#result").html(output);
                        }
                    )
                } 
            });
           return false;
        });
    }); 

嘗試:

$("#result").html(JSON.stringify(output));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM