-1

次のように、プラグインの 1 つで wordpress 組み込みの ajax 実装を使用します。

jQuery('#form_data_voting').submit(function() {
        jQuery.post(
            ajax_object.ajax_url,
            {
                action : 'voting_save',
                value : jQuery('#form_data_voting').serialize(),
            },
                function(data) {
                    alert(data);
                }
        );//get
});

PHP の関数は次のようになります。

add_action('wp_ajax_voting_save', function () {
    var_dump($_POST['value']);          
    die();
});//wp_ajax_voting_save

次に、serialize() 関数のおかげで、関連するすべてのフィールドが 1 つの文字列になっていることがダンプに表示されます。しかし、ここでの問題は、それが「値」変数の背後に格納されていて、そこから取得できないことです。文字列は次のようになりますname=testname&tel=3883838。経由で名前にアクセスできません:$_POST['name']または$_POST['value']['name'].

namewordpress ajax環境でPOST変数にアクセスするにはどうすればよいtelですか、それともそれは不可能で、jsファイルの値としてnameとtelを作成しserialize()、関数から除外する必要がありますか?

誰かがこれを以前に経験したことがあり、解決策を共有できれば素晴らしいことです。ありがとう!

4

2 に答える 2

5

ありがとうVukBG - 私の例ではそうではありませんparse_urlが、parse_str十分です:

    parse_str($_POST['value'], $my_array_of_vars);
    print_r($my_array_of_vars);
于 2013-09-04T19:15:58.993 に答える
0

parse_url()関数を試してください。それがあなたが探しているものだと思います。

この関数の良い例もここで見ることができます

于 2013-09-04T19:02:18.990 に答える