2016-08-13 17 views
0

私は、JSONの配列持っている:私のPHPバックエンドにjson投稿のデータがないのはなぜですか?

[Object { path="/usr/share/htvcenter/storage/Windows", imgid="14698227485587"}, Object { path="/usr/share/htvcenter/storage/WindowsServer", imgid="14701636866762"}] 

をそして私は、Ajaxと、この配列を送信:私はポスト送信のため放火犯でこれを見

$.ajax({ 
      type: 'POST', 
      url: urlstring, 
      contentType: "application/json", 
      data: JSON.stringify(parameters), 

      success: function(data){ 
       $('.lead').hide(); 
       blackalert('Removed successfully!'); 
      } 
    }); 

enter image description here

しかし、サーバーの答えがあります空の$ _POST: enter image description here

サーバーコードi s:

if (isset($_GET['treeaction']) && $_GET['treeaction'] == 'remove') { 
     echo 'here'; 
     var_dump($_POST); die(); 
} 

私は間違っていますか?

+0

あなたは '$ _POST'を取得したいのですが、あなたのコードでは' $ _GET'ですか? – guradio

+0

var_dump($ _ POST);主なデータは投稿にあります。私は削除のアクションをチェックしていますが、POSTで送信するURLに行く –

答えて

0

POSTリクエストを送信する場合、コンテンツタイプをapplication/jsonに設定する必要はありません。そうすることで、これはもはや通常のPOST要求(フォーム値付き)ではなく、ペイロード要求です。

$content = file_get_contents("php://input"); 
var_dump(json_decode($content)); // In case the content is a json string. 

あなたが定期的にリクエストを送信したい場合は、あなたが使用することができます:あなたが使用できるサーバー上のペイロード要求からデータを取得するために

$.ajax({ 
     type: 'POST', 
     .... 
     data: {'data' : parameters}, 
     success: function(data){ 
     alert(data); 
     } 
}); 

contentTypeがなく、 JSON.stringifyなし。
$_POST['data']

+0

ありがとうございます –

+0

あなたは歓迎です:) – Dekel

+0

また、 – Dekel

関連する問題