phpとの連携
flashは外部との連携に非常に優れていて、仕事なんかでよくAPIやCGIなどにアクセスし動的に何かを行ったりすることがあります。
そんな外部との連携とよく行われるのに対し、あまりAPIやCGIのロジックの知識が無かった自分は勉強がてら静的なphpを書いてみました。
そこで今回作ったphpはflashから受け取った値を指定したメールに送信するという、シンプルなものを制作してみました。
<?php
//FLASHからの情報を受け取り
$name = $_REQUEST['name'];
$mail = $_REQUEST['mail'];
$mes = $_REQUEST['msg'];
mb_language(”Japanese”);
mb_internal_encoding("UTF-8"); //文字エンコーディング
$name = mb_convert_encoding( $name, "ISO-2022-JP", "UTF-8" );
$mes = mb_convert_encoding( $mes , "ISO-2022-JP", "UTF-8" );
$body = "名前:".$name."\n".
"メールアドレス:".$mail."\n".
"メッセージ:".$mes."\n";
//メール送信
$result = mb_send_mail( '送信先URL', '件名', $body );
?>
flashはloadVersやクエリストリングでこのphpに値を渡すだけ。
これでflash内でメールフォームを作成することが出来ます。
これを実装して実際にメールを送信してみると、メールの文章が”文字化け”してしまいました。
原因は各文字コードが不一致だったことが判明。
swfを貼り付けているhtmlやphpの文字コードをUTF-8と統一するとはまらなくて済むと思います。