gpt4 book ai didi

javascript - $HTTP_RAW_POST_DATA 错误 - 未发布数据

转载 作者:行者123 更新时间:2023-12-03 02:19:19 26 4
gpt4 key购买 nike

我正在尝试通过 jquery-confirm 插件执行 AJAX 请求,通过其 ajax-load 函数从表单加载文件数据,然后将信息更新到 PHP 文件并最终更新到数据库.

但是,这会导致以下错误。

Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0

Warning: Cannot modify header information - headers already sent in Unknown on line 0

我什至尝试放入一个空白变量,因为此错误的含义是它没有将数据发布到页面。这只是返回一个 undefined index ,确认它没有发布数据。

此网站上的一些帖子说要更改 php.ini 文件等,因为我使用的是大学服务器,我们无权更改这些文件。

这是我的 JS 文件,它正在执行 AJAX 功能

function addSubject(){
$("#addBtn").on('click', function() {
$.confirm({
title: 'Manage Subjects',
content: 'url: addSubjectForm.html',
buttons: {
addSubject: {
text: 'Add New Subject',
btnClass: 'btn-info',
action: function () {
var findSubject = this.$content.find('input#newSubject');
var findDescript = this.$content.find('input#newDescript');

var newSubject = findSubject.val();
var newDescript = findDescript.val();

if (newSubject === '' || newDescript === '') {
$.alert({
content: 'One of the fields from the form was empty',
type: 'red'
});
return false;
} else {
$.ajax({
url: "../ajax/admin/addSubject.php",
type: "POST",
data: {title: newSubject, description: newDescript, blank: 'blank'},
cache: false,
contentType: false,
processData: false,
success: function (result) {
$.alert({
content: result,
type: 'green'
});
}
});

console.log(newSubject + " " + newDescript);
}
}
},
close: {
text: 'Close',
btnClass: 'btn-danger'
}
}
});
});
}

我访问变量的 PHP 页面在这里:

<?php

$title = filter_input(INPUT_POST, "title");
$description = filter_input(INPUT_POST, "description");

$test = $_POST['blank'];

echo $test;

echo "$title $description";

这些文件中的空白变量仅用于测试目的。

提前致谢。

最佳答案

正如警告中所述,$HTTP_RAW_POST_DATA 已弃用,而是使用:

$raw_post_body = file_get_contents("php://input");

用于读取原始正文内容。

但是从我在 JS 代码中看到的情况来看,您正在发送一个正常的 www-url 编码表单,因此建议使用 $_POST。如果仍然不起作用,请在 $_POST 上执行 var_dump 或 print_r,以便您可以调试是否确实没有通过 POST 请求发送任何内容。

关于javascript - $HTTP_RAW_POST_DATA 错误 - 未发布数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49234560/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com