PHPの技で

2011年6月11日 at 17:31

ここで聞くべきことではないですが、PHPで、処理中のファイルから、別のファイルにPOSTしたいのですが、どうすればできますでしょうか。
header("Localtion: xxx")を使うと、GETになるので。。。

Re: PHPの技で

2011年6月12日 at 1:53
file_get_contents()ですかね
 

Re: Re: PHPの技で

2011年6月12日 at 7:00
ありがとうございます。でもちょっと違うように思います。
説明が悪かったかもです。
いま、
header(Location: /index.php?cID=xx&aaa=1&bbb=2)
のようにパラメータを&で区切ってリダイレクトして渡すようになっているので、受け取り側がGETになります。
それでも動作するのですが、実際にはパラメータが長いし、受け取ったときのURLにパラメータが見えてしまうので、POSTでリダイレクトできないかなと。
 

Re: Re: Re: PHPの技で

2011年6月12日 at 7:34
直接の回答じゃないですが、

GETでまずい理由は何ですかね?
(a) URLが汚くなる
(b) ユーザーに変数をいじられたくない
(c) その他

個人的には、(a)なら別にいいじゃん、(b)ならPOSTで受け渡しじゃなくて、サーバー側にデータを置く事を考えます
 

Re: Re: Re: Re: PHPの技で

2011年6月12日 at 9:42
確かにそれでもいいのですが、私のこだわりだけです。

URLのところに文字が埋まるのが好きでない。
パラメータがたくさんあるとき、URLの組み立てのコードがきたない。
 

Re: Re: PHPの技で

2011年6月12日 at 9:43
ご回答いただいたのは、違いましたが、それがすごいヒントになって、CURLの関数でできることがわかりました。
 

Re: Re: Re: PHPの技で

2011年6月12日 at 17:55
yamanoiです。

taoさんがアドバイスしたfile_get_contents()が正解です。

file_get_contents() POSTで検索してみてください。
POSTもできますよ。
 

Re: Re: Re: Re: PHPの技で

2011年6月13日 at 18:26
そうなんですね。
失礼しました。早速試してみます。

やりたいことは一応、curlでできているのですが、こっちのほうがより汎用性があるということですね。
 

Re: Re: Re: Re: PHPの技で

2011年6月18日 at 12:36
file_get_contentsでもうまくできました。
ありがとうございました。

ただ、curlのときも同じでしたがConcrete5の編集状態(上のほうに編集バーが出ている状態)で使うと編集バーが消えてしまいます。これはどうすれば表示できるかわかりませんでしょうか。