「Flashアプリでホームページメンテナンス機能」の続報(かなり間があきましたが成功しました)
6月28日以来のネタです。
続報です。
Flash Liteの技術を使って、ケータイのFlashアプリで
ホームページを更新できるような機能を作ろうと言う話。
まずはおさらい。
Flashで画面を作って、送信ボタンをつけて、送信したところ
サーバ(データの受け取り)側でどうしても受け取るデータが
application/octet-stream
になってしまう、と。
あーどうしましょう。と言うところまでが4ヶ月前。
で、この4ヶ月前の最後の一言。
---
受け取り側(PHP)でバイナリ(octet-stream)を
エンコード?(デコード?)できないだろうか?
---
できたんです。
なのでご報告。
普通、HTMLのフォームから送信されるデータは
まあGETかPOSTですわな。
で、Content-Typeはapplication/x-www-form-urlencoded
あたりでしょうなぁ。
まあGETなら、URLの最後に
なんとか.html?変数1=値&変数2=値&…
のように渡しますわな。
POSTなら、実際は表には見えないけど同じように
変数1=値&変数2=値&…
って感じでデータが送られますわな。
で、受け取るほうは、というと
PHPで書くと
GETならextract($_GET);
POSTならextract($_POST);
ってすれば
$変数1=値
$変数2=値
のようになりますわな。
で、だ。
octet-streamはなんだかよくわからんけど、バイナリデータ。
HTTPヘッダの中(というか下)にあるわけですな。
これをPHPの標準入力で受け取り、
デコードして、
変数名と値をパースする。
file_get_contents("php://input")で受け取り、
urldecode()して
parse_str()する。
extract($_POST)を
parse_str(urldecode(file_get_contents("php://input")))
とするだけ。
意外とあっさり解決してやんの。
まあ、何事も
一回リセットしてみると、うまくいく場合が多い。
今回もそういうことですな。
さて、今後。
ケータイ(Flash)とサーバ(PHP)でのデータのやり取りがうまくいったので
今後はとにかく同じつくりでコンテンツを作っていくだけです。
新しい仕組みとか、そういうのを取り入れるときには
備忘録がてら書いていこうと思います。
続報です。
Flash Liteの技術を使って、ケータイのFlashアプリで
ホームページを更新できるような機能を作ろうと言う話。
まずはおさらい。
Flashで画面を作って、送信ボタンをつけて、送信したところ
サーバ(データの受け取り)側でどうしても受け取るデータが
application/octet-stream
になってしまう、と。
あーどうしましょう。と言うところまでが4ヶ月前。
で、この4ヶ月前の最後の一言。
---
受け取り側(PHP)でバイナリ(octet-stream)を
エンコード?(デコード?)できないだろうか?
---
できたんです。
なのでご報告。
普通、HTMLのフォームから送信されるデータは
まあGETかPOSTですわな。
で、Content-Typeはapplication/x-www-form-urlencoded
あたりでしょうなぁ。
まあGETなら、URLの最後に
なんとか.html?変数1=値&変数2=値&…
のように渡しますわな。
POSTなら、実際は表には見えないけど同じように
変数1=値&変数2=値&…
って感じでデータが送られますわな。
で、受け取るほうは、というと
PHPで書くと
GETならextract($_GET);
POSTならextract($_POST);
ってすれば
$変数1=値
$変数2=値
のようになりますわな。
で、だ。
octet-streamはなんだかよくわからんけど、バイナリデータ。
HTTPヘッダの中(というか下)にあるわけですな。
これをPHPの標準入力で受け取り、
デコードして、
変数名と値をパースする。
file_get_contents("php://input")で受け取り、
urldecode()して
parse_str()する。
extract($_POST)を
parse_str(urldecode(file_get_contents("php://input")))
とするだけ。
意外とあっさり解決してやんの。
まあ、何事も
一回リセットしてみると、うまくいく場合が多い。
今回もそういうことですな。
さて、今後。
ケータイ(Flash)とサーバ(PHP)でのデータのやり取りがうまくいったので
今後はとにかく同じつくりでコンテンツを作っていくだけです。
新しい仕組みとか、そういうのを取り入れるときには
備忘録がてら書いていこうと思います。
このネタへのコメント:
コメントはありません。