javascript - 带有响应数组 [] 的 jQuery Ajax PHP POST 方法已发送数据。如何获得响应中的发送值?

标签 javascript php jquery ajax

我正在创建一个简单的应用程序,它将日志数据插入到数据库表中。

使用 jQuery Ajax POST 方法和 JSON 格式的数据。

我的 index.php 有 HTML 和这段代码:

<script type="text/javascript">
jQuery(document).ready(function() {
    jQuery.ajax({
        type: "POST",
        url: "http://www.example.com/ajax_model.php",
        data: {
            "log_session": "27738d7552b75ae395ae1138adf4fa60",
            "log_ip": "1.2.3.4",
            "log_vrijeme": "2018-11-23 01:22:47",
            "log_model": "12345"
        },
        dataType: "json",
        contentType: 'application/json; charset=utf-8',
        success: function(response) {
            console.log(response);
            alert(response);
        },
        error: function(error) {
            console.log(error);
        }
    });
});
</script>

我的 ajax_model.php - 它给我响应 Array[] instad 发送的数据:

<?php
if(isset($_POST)){
    header('Content-Type: application/json');
    echo json_encode($_POST);
    exit;
}
?>

我在 console.log()alert() - Array[] 中得到结果。 如何输出已发送的响应以检查数据是否通过 Ajax 正确发送?

我是否遗漏了一些括号,例如 []{}? 还是我需要向我的 ajax_model.php 文件中添加一些内容?

感谢您的建议和提供的信息。

最佳答案

您没有发送 JSON,所以去掉:

 contentType: 'application/json; charset=utf-8',

这将导致 $_POST 为空,因为默认的 contentType 是:

application/x-www-form-urlencoded; charset=UTF-8

关于javascript - 带有响应数组 [] 的 jQuery Ajax PHP POST 方法已发送数据。如何获得响应中的发送值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53439409/

相关文章:

javascript - 如何正确使用 .each

javascript - 在 div 内单击时显示图像,单击时也会淡入

javascript - 如何使用类选择器通过 Jquery ScrollTo() 滚动页面到元素?

javascript - 无法使用带有 Linking.openURL ('app-settings' 的 expo 打开设置)

Javascript split() 弄乱了我的 html 标签

javascript - 在传单中加载 map 非常慢

php - 如何在CodeIgniter中进行正确的错误处理?

javascript - ASP.NET 自动提交问题

php - 使用MWS获取商品信息时重新定义参数$quotaMax报错

JavaScript:将线性 JSON 数组转换为深度未知的树结构