- ベストアンサー
PHPから他のcgiにpostしたいのですが
postされたデータをPHPで加工して、自動的にその結果をperlで作られたcgiにpostしようと思っています。 データを受け取って加工するところまでは悪戦苦闘しながらできたのですが、「はて、どうやって渡したらいいんだろう?」と、頭が回らなくなってしまいました。 簡単なことなんでしょうが検索しても上手く見つけられなかったので、宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
hiddenでデータ定義しておいて Javascriptでページ読み込み時に自動的にsubmitさせたらいいかも。
その他の回答 (3)
- Blogger
- ベストアンサー率66% (4/6)
サーバもクライアントも人間が考えたものですから、 どちらもコンピュータホストであることに変わりありません。クライアントがWebブラウザでなくてもよいですし、サーバがWebサーバである必要もないわけです。 ですから、MSIEやNetscapeの役割をする、HTTPクライアントをPHPで実装すれば可能です。PHPプログラム内部からソケットのコネクションを(PerlのCGIのある)サーバへ張り、POSTの値をセットして、呼び出せばOKです。自動POST?といいますか、それができる機能がPHPにはあります。 参考になりそうなページを参考URLに入れておきますね。
- kusukusu
- ベストアンサー率38% (141/363)
> 自動的にその結果をperlで作られたcgiにpostしようと思っています。 これは不可能です(^^; 「postする」と言う行為は、クライアント側の行為なので、サーバーサイドプログラムの関知するところではありません。 同一サーバーであれば、#NO1さんの回答でいいでしょう。 もし、違うサーバーなのであれば、加工されたデータをもう一度手動でpostしてやる必要があります。 具体的に言えば、 ●○の処理が終了しました。この内容でよろしいですか? 等を画面にだし、もう一度ボタンを作って、加工したデータをhiddenで隠してpostする… と言った感じですね。
- Spur
- ベストアンサー率25% (453/1783)
callする時に引数で渡せば良いと思いますけど。 データが多くて、同じサーバ内なら、一旦ファイルに落として、引数でファイル名を渡すとか・・・ それくらいじゃないでしょうか? 私ならそれで妥協してしまいます。( ..)ヾ ポリポリ
お礼
遅くなりまして申し訳ありません。 まとめてこちらで報告させていただきます。 結果としてはeipuさんの案で実現しました。教えていただいてから、そりゃそうだって思いました。 Bloggerさんから教えていただいたURLも非常に参考になりました。今回の目的には合わなかったのですが、しばらくあれこれ触っていたらお礼が遅れてしまいました。 ファイル渡しもいいかもしれませんね。 皆さん、ありがとうございました。