ホームページ >バックエンド開発 >PHPチュートリアル >phpcurlpost_PHPチュートリアル時に発生する問題を解決する

phpcurlpost_PHPチュートリアル時に発生する問題を解決する

WBOY
WBOYオリジナル
2016-07-13 10:39:49753ブラウズ

a.php では、データが POST モードで b.php に送信されますが、b.php はデータを受信できず、CURL 操作は成功を示します。これは非常に奇妙です。 「配列を CURLOPT_POSTFIELDS に渡すと、cURL はデータを multipart/form-data にエンコードしますが、URL エンコードされた文字列を渡すと、データは application/x-www-form-urlencoded にエンコードされます。
」 ", 私のように CURL に詳しくない人がプログラムを書くと、次のようなコードになることがよくあります:

コードをコピー コードは次のとおりです:

$data = array( 'Title' => $タイトル, 'コンテンツ' => $content, 'ComeFrom' =>
curl_setopt($ch, CURLOPT_URL, 'http://example) .com/b .php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_exec($ch);


submit は配列の形式で POST 経由で送信されます。これにより、CURL は「間違った」エンコーディング「multipart/form-data」を使用します。その効果は、「
" のようなフォームを使用して操作を完了できます。試してみてください。現時点では、"b.php" は $_POST 経由でデータを受信できません。

したがって、正しいアプローチは、上記のコード例の $data を配列から urlencode() でエンコードされたものに変更することです。

http://www.bkjia.com/PHPjc/728093.html

tru​​ehttp://www.bkjia.com/PHPjc/728093.html技術記事 a.php では、データが POST モードで b.php に送信されますが、b.php はデータを受信できず、CURL 操作は成功を示します。これは非常に奇妙です。 「配列をCに渡す...
」ということがわかります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。