初級・中級者向け~ウェブ制作備忘録
他ページの内容を挿入するには、「include」「require」「file_geto_contents」などの関数があるが、実行先ファイルがPOST送信でなければ受け付けない場合どうしましょう?
あくまでも、HTML FORMでPOST送信するのではなく、バックグラウンドでPOST送信して結果を挿入させたい…という場合です。
前述のとおり、「include」「require」「file_geto_contents」などの「GET送信」ではなくPOST送信です。
curlでPOSTする変数を配列にして実行することで、結果を取得して表示可能となります。
$data = array( 'name1' => 'value1', 'name2' => 'value2', 'neme3' => 'value3' ); $ch = curl_init('https://送信先'); curl_setopt($ch,CURLOPT_POST,TRUE); curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($data)); curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE); echo curl_exec($ch); curl_close($ch);
素晴らしいのは、送信先スクリプトが、PHPでもCGIでも可能だということ。1枚のPHPファイルで様々なスクリプトを実行して挿入できる便利なコードです。
PHP | |
2021.04.10 12:02 | |
2021.04.24 14:57 |