Acuity Scheduling APIを使用しています。カスタムフィールドを投稿するには、配列内にJSONオブジェクトを2つのキー/ペア値idと値。ここでは、このための私の現在のコードは次のとおりです。複数の値を持つJSONオブジェクトをPHPの配列内に作成
$postarray = array (
'datetime'=>'2017-02-01T14:00:00-0800',
'appointmentTypeID'=>'Appt ID',
'firstName'=>'First Name',
'lastName'=>'last Name',
'email'=>'myemail',
'phone'=>'phone #',
'fields' => array(
array('id'=>'1234', 'value'=>'Field Data')
)
);
$post = json_encode($postarray);
私は、通過します配列の内部2つの値でJSONオブジェクトを追加する方法を知らないので、私は「フィールド」配列の内部配列を持っていますjson_encodeです。リクエストではJSONに変換してから送信する必要があるためです。
"{" status_code ":400、" message ":"このフォームには\ u00221234 \ u0022は存在しません "というメッセージが表示されます。私の必要なのは、私の主な配列がJSONオブジェクトになること、配列になる 'フィールド'、次に個々のIDと値のペアを独自のオブジェクトにすることです(Acuity Scheduling APIから直接取得)。ここで
{
"datetime": "2016-02-03T14:00:00-0800",
"appointmentTypeID": 1,
"firstName": "Bob",
"lastName": "McTest",
"email": "[email protected]",
"certificate": "ABC123",
"fields": [
{"id": 1, "value": "Party time!"}
]
}
は、この特定のリクエストに応じて参照するために視力のスケジューリングAPIである
https://developers.acuityscheduling.com/reference#post-appointments
APIドキュメントでは、JSONとしてエンコードする必要があります。 – Barmar
彼が投稿した例は、JSONオブジェクトがJSONオブジェクト内にネストされていることを示しています。配列の周りでjson_encodeを呼び出すと、jsonオブジェクト内にjsonオブジェクトが作成されます。 – Illuminati
'json_encode()'はオブジェクトではなく文字列を返します。 – Barmar