| 投稿者 | 
    メッセージ | 
   
  
    | 
		 | 
	 
  
    | <  PHPプログラミング  ~  Flashからの変数(UTF-8)をPHP(EUC-JP)で処理した際の文字化け | 
   
  
  
     | 
    
        
           時間:
            水 12月 24, 2008 10:54 pm 
            
             | 
            
              | 
         
        | 
   
  
    
       
       
       
      登録日: 2008年6月 07日 
      投稿記事: 7 
      所在地: 埼玉県
  | 
  | 
皆さん、今晩は。
 
Flashでメールフォームを作り、以下の変数(Flashの文字コードは、UTF-8です)をPHP5(EUC-JPで記載)に引渡してます。
 
//以下Flash側で生成する変数名
 
from
 
email
 
address
 
phone
 
comments
 
 
この変数を、PHP5が受けて、mb_send_mail();でメールを送るようにしてます。
 
ローカル環境下では、Apache下で、php.iniの設定をしてるので、日本語の文字化けしませんが、niftyのhttp://xxx.xxx.coocan.jp/に、FlashとPHP5を設置すると、Flashに記載した日本語が、メールで到着した際に、文字化けがおこります。半角英数字は、化けなしで、きちんと届きます。
 
 
//以下が記載したPHP、ここから
 
 <?php
 
$to = 'abcdef@yahoo.co.jp';//宛先のメールアドレス
 
$subject = 'ご連絡';
 
 
$Message = 'From: '.$_POST['from']."\n\n";
 
$Message .= 'Email: '.$_POST['email']."\n\n";
 
$Message .= 'Address: '.$_POST['address']."\n\n";
 
$Message .= 'Phone: '.$_POST['phone']."\n\n";
 
$Message .= 'Comments: '.$_POST['comments'];
 
 
$header = "From: $_POST[email]\n";//Flashにインプットしたユーザーのメールアドレス
 
 
$_POST['from']= mb_convert_encoding($_POST['from'], "EUC-JP", "UTF-8");//FlashのUTF-8をPHPのEUC-JPにencodingの意味のつもりですが、効果なしです。以下、同様です。
 
$_POST['email']= mb_convert_encoding($_POST['email'], "EUC-JP", "UTF-8");
 
$_POST['address']= mb_convert_encoding($_POST['address'], "EUC-JP", "UTF-8");
 
$_POST['comments']= mb_convert_encoding($_POST['comments'], "EUC-JP", "UTF-8");
 
 
$OK = mb_send_mail($to, $subject, $Message, $header);//成功した場合は、true、失敗時は、falseを返す
 
 
if ($OK) {//$OK==true、即ち、mb_send_mai();が成功したなら、trueとなり、
 
 	 echo 'sent=OK';//変数 sentにOKを代入し、Flashに送り返す
 
 	 }
 
?>
 
//ここまで
 
 
長くなりましたが、FlashとPHPの引渡しは、上手く、行ってますので、上記サーバー経由時の日本語の文字化けだけが、問題なのですが、encodingの良い方法を教えて頂けると助かります。宜しくお願いします。   |  
 |  
 
 |  
  | 
   
  
     | 
     | 
   
  
      | 
   
  
     | 
    
        
           時間:
            金 12月 26, 2008 12:03 am 
            
             | 
            
              | 
         
        | 
   
  
    
       
       
       
      登録日: 2008年6月 07日 
      投稿記事: 7 
      所在地: 埼玉県
  | 
  | 
皆さん、
 
サーバーを、ユーザーが、php.ini設定可能な、lolipopのサーバーに変更して、試したところ、日本語の文字化けなしで、メールが届くようになりました!   
 
お騒がせしました。
 
*しかし、coocanだと、問い合わせても、全く、埒が明かなかったのですが、本サイト推奨のlolipopは、サービスが細かくて、いいですね。 |  
 |  
 
 |  
  | 
   
  
     | 
     | 
   
  
      | 
   
  
     | 
   
 
 
 
 
  
	 
	    
	   | 
	
 
新規投稿: 不可 返信: 不可t 自分の記事の編集: 不可 自分の記事の削除: 不可 投票への参加: 不可
  | 
   
 
 
   |