1

JSONオブジェクトの配列を送信しようとしています

非表示フィールドを使用する PHP サーバー

しかし、私がサーバーに入れているのは単なる文字列です

ここに画像の説明を入力

これは私のJavaScriptです

function CreateArrayOfJSON()
{
      var all_childrens = $('#form_div').find('*');//get all root element childrens
      var form_elements = {
            elements: []
        };
            for(var i=0;i<all_childrens.length;i++)
            {
               var id='#'+$(all_childrens[i]).attr('id');         //get id
               var style_attr=$(all_childrens[i]).attr('style'); //get style inline
               var classes=$(all_childrens[i]).attr("class");

               form_elements.elements.push
               ({ 
                    "id"         : id,
                    "style_attr" :style_attr,
                    "classes"    :classes
               });
            }
            document.getElementById('form_elements_array').value=form_elements;//fill hidden field
}

これは私のPHPです:

これは Object オブジェクトを返します (上の図のように)

$form_elements=$_POST['form_elements_array']; 

これはnullを返します

$form_elements=json_decode($_POST['form_elements_array']);

何か案は ?

ありがとうございました

4

3 に答える 3

1

出力文字列を貼り付けることはできますか?

または代わりに

同じためにCurlを使用できます

    $url = "URL Where you want to send data";
    $ch = curl_init();
    $attachment = array(
    'name' => 'Your first field',
    'link' => 'Second Field',
    'description' => 'description here',
);

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
    $result = curl_exec($ch);
    curl_close($ch);

レシーバーページのphpコード

于 2013-10-18T06:38:40.023 に答える
0

出力文字列を貼り付けることはできますか?

または代わりに

同じためにCurlを使用できます

    $url = "URL Where you want to send data";
    $ch = curl_init();
    $attachment = array(
    'name' => 'Your first field',
    'link' => 'Second Field',
    'description' => 'description here',
);

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment);
    $result = curl_exec($ch);
    curl_close($ch);

レシーバーページのphpコード

        echo $_POST['name']; // get your data with POST method
于 2013-10-18T06:43:17.497 に答える