0

我正在使用 jQuery/Ajax 发送一些数据。我的代码被标记为 POST,但 PHP 实际上将其视为 GET。是什么赋予了?

$.ajax({
         url: url,
         type: "POST",
         contentType: "application/json; charset=utf-8",
         dataType: "json",
         success: function (results) {
               callback(results);
         },
         error: function (req, msg, obj) {
               console.log('An error occured while executing a request for: ' + url);
               console.log('Error: ' + msg);
         }
});

我可以通过执行 print_r($_GET) 和 print_r($_POST) 来确认它作为 GET 进入 PHP 端

4

4 回答 4

2

您没有在帖子中发送任何数据。尝试添加一些数据并检查服务器端。

JS

<script>
  $.ajax({
    url: url,
    type: "POST",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    data    : {
      'sample' : 'sample_data' 
    },
    success: function (results) {
      callback(results);
    },
    error: function (req, msg, obj) {
      console.log('An error occured while executing a request for: ' + url);
      console.log('Error: ' + msg);
    }
  });
</script>

PHP

<?php

$sample = '';

if (isset($_POST['sample'])) {
  $sample = $_POST['sample'];
}

echo $sample;

?>

// 输出

sample_data
于 2013-03-15T04:22:13.513 回答
0

我认为通过 url 你传递值而不是 get 如果你想发布尝试像

$.ajax({
     url: url,
     type: "POST",
     data:{'my_var':'gautam'},
     -------------

在 php 中你可以使用 like

<?php
    print_r($_POST);    //or you can print_r($_POST['my_var']);
?>

给你'gautam'......

于 2013-03-15T04:20:03.927 回答
0

用于$_SERVER['REQUEST_METHOD']检查其GETPOST

echo $_SERVER['REQUEST_METHOD'];
于 2013-03-15T04:20:27.237 回答
-1

使用 $_REQUEST[] 获取 POST 和 GET 方法值

<?php
  print_r($_REQUEST);
  extract($_REQUEST);
  echo "sample : ".$sample;

?>

输出:样本:样本数据

于 2013-03-15T04:55:03.040 回答