Php 通过AJAX POST请求发送到服务器端的数据不会持久化

Php 通过AJAX POST请求发送到服务器端的数据不会持久化,php,ajax,session,post,Php,Ajax,Session,Post,我正在用PHP创建一个应用程序,它通过编程从home.PHP文件中发送POST请求,如下所示: $.ajax({ type: "POST", url: home.php, data: {id: 5 }, success: function(data) { alert(data); } }); 警报功能显示预期输出: array(1){ ["id"] => string(1) "5" } ... 但当我包括 <?p

我正在用PHP创建一个应用程序,它通过编程从home.PHP文件中发送POST请求,如下所示:

$.ajax({
    type: "POST",
    url: home.php,
    data: {id: 5 },
    success: function(data) {    
        alert(data);
    }
});
警报功能显示预期输出:

array(1){
  ["id"] => string(1) "5"
}
...
但当我包括

<?php
   var_dump($_POST);
?>
我也尝试过通过发布的数据建立会话和更新会话变量,但在这种情况下,修改后的会话变量在POST请求后不会回显到客户端

<?php
    session_start();
    $_SESSION["varname"] = "green";

    echo $_SESSION["varname"];
?>

正如预期的那样,呼应“绿色”

<?php

    $_SESSION["varname"] = $_POST["id"];
    echo $_SESSION["varname"];
?>


什么也不回显。

两个
原始代码中的语法都是正确的,并且已经进行了编辑。对于任何拒绝投票的人,请告诉我原因,以便我能够理解我的错误。您能否确认在浏览器的网络控制台中发送了正确的POST数据?另外,
url:home.php
仍然是不正确的,除非您有一个对象
home
带有字符串url属性
php
进行调试,否则您应该在php脚本顶部启用完整的错误消息~
我正在处理的php文件名为home.php,并且在url属性中我列出了整个url。基本上,我希望将数据发送到我当前所在的页面。检查网络控制台后,似乎没有发送POST数据。
<?php

    $_SESSION["varname"] = $_POST["id"];
    echo $_SESSION["varname"];
?>