缺少ajax $ _POST数组

时间:2017-03-06 15:44:28

标签: javascript php jquery

我使用jquery $ .post函数发布到我的本地服务器。它正确发布,我看到$ _POST数组中的值。但是当我在网站上在线上传相同的代码时,$ _POST返回空。不知怎的,'名称' var甚至没有发送过来?我错过了什么?

继承jquery / javascript方面:



$("#box").keyup(function( event ) {
  //Simple test to see if it gets to the
  //file.
  $.post( "test-file.php", { name:"John"},       function() {
      alert( "success" );
    })
    .done(function(data) {
      //Checking the respones from the file
      alert( "second success: "+data );
    })
    .fail(function() {
      alert( "error" );
    })
    .always(function() {
      alert( "finished" );
  });



});




以下是test-file.php文件的作用:



<?php

//Checking to see if I get to the
//file
echo "TEST:";

//Checking to see whats inside the post
var_dump($_POST);



?>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

您需要编写php页面的url。

如果是www.my_url.com/test-file.php,你需要这样写:

$.post( "www.my_url.com/test-file.php", { name:"John"},       function() {
  alert( "success" );
}) .....

答案 1 :(得分:0)

看起来您正在将JSON数据发布到php。确保仔细检查内容类型标题以确保。

一般来说,$ _POST变量仅在您发布application/x-www-form-urlencoded时填充。看看以下是否适合您:

$rest_json = file_get_contents("php://input");
$_POST = json_decode($rest_json, true);