[討論]有關 "電子郵件通知 " 功能 與 UTF-8
版主: 版主管理群
版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
-
mischuinet
- 星球普通子民

- 文章: 4
- 註冊時間: 2006-04-14 17:48
[討論]有關 "電子郵件通知 " 功能 與 UTF-8
現時本人使用 .20版本, 加上 UTF-8的 Chinese-Traditional 語言包, 當使用 電子郵件通知 功能(MASS MAIL)時, 所傳出去的電郵是以 UTF-8傳送, 以致各使用者會收到亂碼之電郵, 請問各位有沒有試過這問題及如何解決?
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
-
mischuinet
- 星球普通子民

- 文章: 4
- 註冊時間: 2006-04-14 17:48
http://www.php.net/manual/en/ref.mbstring.phpmischuinet 寫:另外, 我參考了這個MOD後, 再加了一些code, 可以在沒有mbstring 之下都可強行傳送big5郵件. 整理好後或會遲些作出分享.
mbstring 和寄信沒有直接關係吧?它只是提供處理 string 的 function 可以辨識並且正常處理 multibyte 文字而已...
要轉換文字 charset 我會用 iconv
感謝神川小羽的分享!
偶使用2.0.21 UTF8的版本,也是發生寄通知信時出現亂碼,後來依照神川小羽的分享修改,卻發現原來偶linux中的PHP並未 enable mbstring,偶也不想重新編譯PHP,所以就改寫神川小羽的程式,將所有
改為
這樣就行了!
簡單來說就是將mb_convert_encoding改為iconv。
偶使用2.0.21 UTF8的版本,也是發生寄通知信時出現亂碼,後來依照神川小羽的分享修改,卻發現原來偶linux中的PHP並未 enable mbstring,偶也不想重新編譯PHP,所以就改寫神川小羽的程式,將所有
代碼: 選擇全部
$this->subject = '=?'.$this->new_email_encode.'?B?' . base64_encode(mb_convert_encoding($this->subject, $this->new_email_encode, $lang['ENCODING'])).'?=';
$this->msg = mb_convert_encoding($this->msg, $this->new_email_encode, $lang['ENCODING']);
$this->extra_headers = mb_convert_encoding($this->extra_headers, $this->new_email_encode, $lang['ENCODING']);代碼: 選擇全部
$this->subject = '=?'.$this->new_email_encode.'?B?' . base64_encode(iconv( $lang['ENCODING'], $this->new_email_encode, $this->subject)).'?=';
$this->msg = iconv( $lang['ENCODING'], $this->new_email_encode, $this->msg);
$this->extra_headers = iconv( $lang['ENCODING'], $this->new_email_encode, $this->extra_headers);簡單來說就是將mb_convert_encoding改為iconv。

