Ajax post:Not 能够在 php 中检索发布的数据

Ajax post:Not able to retrieve posted data in php

我想 post 使用 ajax 调用的数据。 ajax 告诉我们工作正常,但是当我提醒数据时,它显示所有 html 标签,然后我无法检索 php.[=14= 中的数据]

我的文件 Filterpage.php 代码如下:

<html>
<body>
<?php
  $data= $_POST['grpNm'];
  echo $data;
?>

<script>
 $(document).ready(function(){
  var GrpNm="ABC";
   $.ajax({
         type: "POST",
         url:"FilterPage.php",
         data: {grpNm : GrpNm},
         success: function(data){ 
             alert(data);
                  },
                  
          error:function(data){ 
              alert("No"); 
                  },
                  
                });
         
      });
</script>

</body>
</html>

ajax 调用中的警报(数据)给出了所有 html 标记,而在 php 中我收到以下错误: 注意:未定义index:grpNm

请帮助我哪里做错了..我搜索了很多问题并尝试了答案但没有工作

我想你错过了什么。当您在浏览器中打开文件 localhost/Filterpage.php PHP 找不到 $_POST['grpNm'] 那么您的 ajax 触发并请求同一个文件。

正如您 return HTML 一样,很明显您也看到了一些 HTML。你应该在 echo $data; 之后终止进程,这样页面的其余部分就不会 return 在输出中。

<?php
  if(isset($_POST['grpNm'])){
    echo $_POST['grpNm'];
    
    die;
  }
  
?>
<html>
<body>

<script>
 $(document).ready(function(){
  var GrpNm="ABC";
   $.ajax({
         type: "POST",
         url:"Filterpage.php",
         data: {grpNm : GrpNm},
         success: function(data){ 
             alert(data);
         },
                  
          error:function(data){ 
              alert("No"); 
          },
                  
       });
         
   });
</script>

</body>
</html>

所以在这里你在顶部回显数据并在那之后终止进程。那么 HTML 将不会 return 调用 ajax。当您打开 URL.

时,我们还会检查是否存在阻止 undefined index:grpNm 警告的索引

此外,将您的业务逻辑分离到另一个 PHP 文件并通过 ajax.

调用该 PHP 文件是个好主意