gpt4 book ai didi

php - Wordpress AJAX/PHP $_POST 对象始终为空

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

这看起来更像是一个 PHP 问题,而不是 Wordpress 问题,但它是在运行 WP 的服务器上,所以我将其包含在内以防万一。

我有一个像这样的 JS 对象:

{
"Name": "Test Names",
"Company": "Test Company",
"Email": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="c89cadbbbc8da5a9a1a488a5a9a1a4e6aba7a5" rel="noreferrer noopener nofollow">[email protected]</a>",
"Phone": "234556",
"FoundPlattarHow": "Internet",
"Interest": "Building",
"ReceiveUpdates": "1"
}

目前我只有一个空白的 PHP 文件,位于 /lib/contact.php:

<?php 
echo "HELLO" . $_POST['Email'];
prettyPrint($_POST);

function prettyPrint($a) {
echo "\n";
print_r($a);
echo "\n";
}

?>

我正在使用 POSTMAN(当我从浏览器中执行实际的 AJAX 请求时,结果是相同的),并将上面的 JS 作为 application/JSON 作为 POST 请求发送到脚本。

我得到的输出是:

HELLO
Array
(
)

所以看起来我的数据实际上根本没有通过。我在这里做错了什么?!

最佳答案

您将在请求正文中发送带有“Content-type: application/json” header 的数据。在这种情况下,您应该使用下面的方法,

$data = file_get_contents("php://input");
$json = json_decode($data, true);
var_dump($json);

关于php - Wordpress AJAX/PHP $_POST 对象始终为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47039075/

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