Ticket #326 (closed バグ指摘: 修正済)

Opened 13 years ago

Last modified 13 years ago

メール差出人の文字化け

Reported by: adachi Owned by: yomoro
Priority: Milestone: EC-CUBE2.3.0
Component: フロント Version: 2.1.2(正式版)
Keywords: Cc:
修正済み:

Description

 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=2449&forum=8

次の環境にて、メールの差出人欄(店舗情報など)に15~20文字以上の日本語を入れると
途中で文字化けが発生しました。

◇EC-CUBE 2.0.1
CentOS 4.6 (kernel2.6.9)
Apache 2.0.52
PHP 4.3.9
MySQL 4.1.20
Postfix 2.2.10


原因はFromとSubjectのエンコードの際に改行が余分に入ってしまう事で、
メーラーがうまくデコードできないためでした。
(beckyとgmailにて確認)
====================================================
(例)
From: "=?ISO-2022-JP?B?hoge~~~hogehoge=

=?ISO-2022-JP?B?hogehgoe==?="<hoge@example.com>
====================================================

EC-CUBE 2.1.2aでも同等の現状が発生しましたので、
同様の症状でお困りの方は、次のコード修正で直るかもしれません。
(当方、これで直りました)

対象ファイル:data/class/SC_SendMail.php

$ diff SC_SendMail.php.201 SC_SendMail.php
102c102
< $this->subject = mb_encode_mimeheader($subject);
---
> $this->subject = mb_encode_mimeheader($subject, "JIS", 'B', "\n");
142c142
< $_name = mb_convert_encoding($_name,"JIS",CHAR_CODE);
---
> // $_name = mb_convert_encoding($_name,"JIS",CHAR_CODE);
144c144
< $_name = mb_encode_mimeheader($_name);
---
> $_name = mb_encode_mimeheader($_name, "JIS", 'B', "\n");

Change History

comment:1 Changed 13 years ago by yomoro

  • Owner changed from somebody to yomoro
  • Status changed from new to assigned

comment:2 Changed 13 years ago by yomoro

  • Status changed from assigned to closed
  • Resolution set to 修正済

修正済: r17484 で修正

comment:3 Changed 13 years ago by adachi

version-2ブランチに修正反映しました(r17491)

Note: See TracTickets for help on using tickets.