[PHP-users 15003]Re: メール件名の文字化けについて

kohara skohara @ fb3.so-net.ne.jp
2003年 5月 2日 (金) 16:42:05 JST


小原です。いわきり様ありがとうございます。

> いわきりです
> 
> kohara wrote in <20030502153238.B6BE.SKOHARA @ fb3.so-net.ne.jp> :
> >「b.件名の一部が文字化け」です。
> >投稿文にも書きましたが
> >
> >例えば)
> >件名に「てすと」だと文字化けなし
> >件名に「てすとてすとてすとてすと」だと文字化け発生
> >⇒てすとてすとてすと$F$9$H
> 
> メールのヘッダを提示してもらえませんか?
> 私の所で試すと
> Subject: =?ISO-2022-JP?B?GyRCJEYkOSRIJEYkOSRIJEYbKEI=?=
>  =?ISO-2022-JP?B?GyRCJDkkSCRGJDkkSBsoQg==?=
> 
> と正常にmime encodeされます。
> あと、mailerによっては複数行にまたがるフィールドの
> 結合に失敗するものがあります。
> #最近は殆ど見掛けませんが

メールソフトはBecky!を使っていますが、受信メールのヘッダーは
------------------------------------------------------------
To: sample @ example.co.jp
Subject: てすとてすとてすと$F$9$H
From: sample @ example.co.jp
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
------------------------------------------------------------
となっています。

> mb_send_mail()でコード変換が行われていないということでしたら、
> 先程のメールヘッダのSubject:フィールドは、生jisが入っているとか
> はないでしょうか?
> 
> また、CGI版のphp.iniが正しく繁栄されているかメールのボディに
> phpinfo()の結果を入れて見てはどうですか?
> 
> ob_end_flush();
> ob_start();
> phpinfo();
> $msg = ob_get_contents();
> ob_end_clean();
> mb_send_mail($To, $subject, $msg, "From:$From");


ご指示いただきましたように確認してみましたが、マルチバイトあたり
は正常に反映されているみたいです。見づらいですが、抜粋したものを
以下に転記させていただきます。

<h2><a name="module_mbstring">mbstring</a></h2>
<table border="0" cellpadding="3" width="600">
<tr><td class="e">Multibyte Support </td><td class="v">enabled </td></tr>
<tr><td class="e">Japanese support </td><td class="v">enabled </td></tr>
<tr><td class="e">Multibyte (japanese) regex support </td><td class="v">enabled </td></tr>
</table><br />
<table border="0" cellpadding="3" width="600">
<tr class="h"><th>Directive</th><th>Local Value</th><th>Master Value</th></tr>
<tr><td class="e">mbstring.detect_order</td><td class="v">auto</td><td class="v">auto</td></tr>
<tr><td class="e">mbstring.encoding_translation</td><td class="v">Off</td><td class="v">Off</td></tr>
<tr><td class="e">mbstring.func_overload</td><td class="v">0</td><td class="v">0</td></tr>
<tr><td class="e">mbstring.http_input</td><td class="v">auto</td><td class="v">auto</td></tr>
<tr><td class="e">mbstring.http_output</td><td class="v">SJIS</td><td class="v">SJIS</td></tr>
<tr><td class="e">mbstring.internal_encoding</td><td class="v">EUC-JP</td><td class="v">EUC-JP</td></tr>
<tr><td class="e">mbstring.language</td><td class="v">Japanese</td><td class="v">Japanese</td></tr>
<tr><td class="e">mbstring.script_encoding</td><td class="v"><i>no value</i></td><td class="v"><i>no value</i></td></tr>
<tr><td class="e">mbstring.substitute_character</td><td class="v"><i>no value</i></td><td class="v"><i>no value</i></td></tr>
</table><br />



PHP-users メーリングリストの案内