0

問題がどこにあるのかわかりません。これは、JSON を投稿するための私の JS 関数です。

function send(var1, var2) {
    var result;
    att = window.location;
    $.ajax({
        'crossDomain': true,
        'type': 'POST',
        'async': false,
        'global': false,
        'data': {
            "event_id": var1,
            "status": var2
        },
        'url': att + 'post.php',
        'dataType': 'json',
        success: function (data) {
            result = data['result'];
        }
    });
}

サーバー側では、これ (ファイル: post.php):

<?php
    echo $_POST;
?>

「配列」のみを出力します。問題は、「データ」をその正確な形式で送信する必要があることです (それを文字列化してから、php json_decode() 関数を使用することはできません)。« file_get_contents("php://input") » の方法も試しましたが、まだ何もありません。問題がjsonを適切に投稿できないことなのか、php側で読めないことなのかわかりません。GET メソッドを使った実験は問題ありませんでした。私の悪い英語で申し訳ありません。

4

2 に答える 2

0

印刷するには、phparrayの関数を利用できますprint_r()

<?php
print_r(json_encode($_POST)); //use json_encode() since dataType in ajax call is json
?>

個々の値を印刷するには、次を利用できますecho()

<?php
 echo(json_encode($_POST['event_id']));
?>
于 2013-06-23T13:08:06.910 に答える