長いタイトルになってしまいましたが、ようするにJSON形式なら受け渡しが楽になりますよということです。
まず、JQueryからPHPにJSON形式のデータを渡す方法(www/index.php)
Ajax Sample Ajax sample
JQueryからJSON形式のデータを受け取りPHPで連想配列にして他のURLにポストする方法(www/ajax_api.php)
ちなみに、ベーシック認証がない場合は、define(‘DEMO’, true);をdefine(‘DEMO’, false);へ
"{$memberId}" ); $data = http_build_query($data, "", "&"); if (DEMO) { //header $header = array( 'User-Agent: My User Agent 1.0', //ユーザエージェントの指定 'Authorization: Basic ' . base64_encode('account:password'),//ベーシック認証 "Content-Type: application/x-www-form-urlencoded", "Content-Length: " . strlen($data) ); } else { //header $header = array( "Content-Type: application/x-www-form-urlencoded", "Content-Length: " . strlen($data) ); } $context = array( "http" => array( "method" => "POST", "header" => implode("\r\n", $header), "content" => $data ) ); $res = file_get_contents(SAMPLE_API, false, stream_context_create($context)); return $res; } ?>
POSTデータを頂き、情報(連想配列のID指定にしていますが、ご利用の際には、DBから取得する方法へもバージョンアップできます。)
を取得JSON形式の返信を頂く方法(wwwapi/index.php)
array("id" => 10000,'name' => 'Name10000','tel' => "000100010001"), "9999" => array("id" => 9999,'name' => 'Name9999','tel' => "000900090009"), "9998" => array("id" => 9998,'name' => 'Name9998','tel' => "000900090008"), "9997" => array("id" => 9997,'name' => 'Name9997','tel' => "000900090007"), "9996" => array("id" => 9996,'name' => 'Name9996','tel' => "000900090006"), "9995" => array("id" => 9995,'name' => 'Name9995','tel' => "000900090005"), "9994" => array("id" => 9994,'name' => 'Name9994','tel' => "000900090004"), "9993" => array("id" => 9993,'name' => 'Name9993','tel' => "000900090003"), "9992" => array("id" => 9992,'name' => 'Name9992','tel' => "000900090002"), ); $memberId = $_POST['member_id']; if(empty($memberArray[$memberId])) { echo json_encode(array()); } echo json_encode($memberArray[$memberId]); ?>
※jquery-1.11.2.min.jsは、特にふれていませんが、実行するには必要になります、ご注意ください。