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) を実行することで、PHP 側で GET として入ってくることを確認できます。

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ではあなたは次のように使うことができます

<?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

POST メソッドと GET メソッドの両方の値を取得するには、$_REQUEST[] を使用します。

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

?>

出力: サンプル: sample_data

于 2013-03-15T04:55:03.040 に答える