[Tep-j-general] Re: php4.4.0で日本語が化け

Back to archive index

Margy Mutoh margy****@roseb*****
2005年 8月 22日 (月) 06:23:36 JST


曽我部さん、こんにちは。Margyです。
いつもありがとうございます。

ご指摘の箇所、修正しましたら、文字化けを回避することが
できました。ありがとうございました。m(_ _)m

私の環境では(たまたまかもしれませんが)admin側は文字化けは
ありませんでしたので、先にcatalog側を修正したところ、
from_name、subjectともに文字化けは直りました。

admin側も今後のために、ご指摘の通り修正させていただきました。


以下、修正箇所のご報告です。
----------------------------------------------------
catalog/includes/classes/email.php(v1.5)
482行目から487行目まで

// オリジナルここから
      if ($subject != '') {
        $subject = mb_encode_mimeheader(mb_convert_kana($subject, "KV"),
'ISO-2022-JP', "B", $this->lf);
      }
      $to    = ($to_name != '')
          ? ('"' . mb_encode_mimeheader(mb_convert_kana($to_name, "KV"),
'ISO-2022-JP', "B", $this->lf) . '" <' . $to_addr . '>')
// オリジナルここまで

--
// 修正後ここから
      if ($subject != '') {
      $subject = mb_convert_encoding($subject, 'ISO-2022-JP'); // 追加
        $subject = mb_encode_mimeheader(mb_convert_kana($subject, "KV"),
'ISO-2022-JP', "B", $this->lf);
      }

      $to_name = mb_convert_encoding($to_name, 'ISO-2022-JP'); // 追加
      $to_addr = mb_convert_encoding($to_addr, 'ISO-2022-JP'); // 追加
by Sogabe

      $to    = ($to_name != '')
          ? ('"' . mb_encode_mimeheader(mb_convert_kana($to_name, "KV"),
'ISO-2022-JP', "B", $this->lf) . '" <' . $to_addr . '>')
          : $to_addr;

	$from_name = mb_convert_encoding($from_name, 'ISO-2022-JP'); // 追加
	$from_addr = mb_convert_encoding($from_addr, 'ISO-2022-JP'); // 追加
// 修正後ここまで
----------------------------------------------------
admin/includes/classes/email.php(v1.5)
444行目から448行目まで

// オリジナルここから
    if ($subject != '')
      $subject = mb_encode_mimeheader(mb_convert_kana($subject, "KV"),
'ISO-2022-JP', "B", $this->lf);
    $to    = ($to_name != '')
        ? ('"' . mb_encode_mimeheader(mb_convert_kana($to_name, "KV"),
'ISO-2022-JP', "B", $this->lf) . '" <' . $to_addr . '>')
        : $to_addr;
// オリジナルここまで

--
// 修正後ここから
    if ($subject != '')
      $subject = mb_convert_encoding($subject, 'ISO-2022-JP'); // 追加
      $subject = mb_encode_mimeheader(mb_convert_kana($subject, "KV"),
'ISO-2022-JP', "B", $this->lf);

      $to_name = mb_convert_encoding($to_name, 'ISO-2022-JP'); // 追加
      $to_addr = mb_convert_encoding($to_addr, 'ISO-2022-JP'); // 追加

    $to    = ($to_name != '')
        ? ('"' . mb_encode_mimeheader(mb_convert_kana($to_name, "KV"),
'ISO-2022-JP', "B", $this->lf) . '" <' . $to_addr . '>')
        : $to_addr;

	$from_name = mb_convert_encoding($from_name, 'ISO-2022-JP'); // 追加
	$from_addr = mb_convert_encoding($from_addr, 'ISO-2022-JP'); // 追加
// 修正後ここまで
----------------------------------------------------

4.3.11、5.0.4でも同様の症状が出るようですので、該当される方の
ご参考になればと思います。

曽我部さん、今回もありがとうございました。
早くサーバがバグフィクス版になるといいんですけどね…(T_T)

Margy Mutoh






Tep-j-general メーリングリストの案内
Back to archive index