最近在處理松韻的群組管理 Script。
我採用了 PHProjekt (http://www.phprojekt.com/) 這支 Script,
原則上作者說是不支援 UTF-8 的,可我的系統走的是 UTF-8 架構,
只好卯起來修改,大體而言進展也算令人滿意,
不過目前還是會有瀏覽器誤判編碼的問題..
將 PHProjekt 修改為支援 UTF-8 其實不是很難,
只要伺服器的架構正確,Script 自然就能正確跑起來,
就像現在我用的 Blog,完全是無痛架設啊 (茶)
不過好玩的問題出現了,
改完 UTF-8 之後,寄信出去後大部分的人都跟我說是亂碼..
這也難怪,就連 Y 社、H 社的 WebMail 介面,
都只支援 Bug.. 不,Big5 編碼,
將編碼調整成 UTF-8 的話,介面就亂成一片了。
Okay.. 現在我要怎麼解決呢?
一是修改 MIME 敘述,
在段落敘述中加上 charset = “UTF-8” 這句話,
用 Outlook 這類軟體收就能看到正確的字元;
但這樣也只能讓一部分的 WebMail 選擇正確的編碼..
該如何做呢?
對於積習已久的網路與使用者們,
實在不能強迫使用 UTF-8..
Joomla! (http://www.joomla.org/) 這個系統也有這樣的問題,
而 TaiwanJoomla (http://www.taiwanjoomla.com/) 的解決方式,
就是再掛上一組函式,讓程式寄信出去的時候,
轉換成 Big5 編碼。
很混亂,但是很有效。
於是我試著使用第二種方式,
但用的是最簡單的方式 ── iconv (連 mbsring 都懶得用呢.. ||)
在 PHProjekt 寄信出去的 function 裡面,
加上 iconv 來把 UTF-8 轉換成 Big5。
或許是我的 coding 功力還不夠,
也或許是因為瀏覽器常常亂跳編碼,
有時候寄出去的信,會有什麼都不是的怪字碼出現 @@
想想..
與其使用一套系統裡面的群發信件功能,
不如自己寫個簡單的群發 Script,
說不定會比改 code 還來得輕鬆 (嘆)
打算好好學會 MYSQL 跟 PHP5,
這樣想做什麼功能,就做什麼功能啊 (遠目)
除此之外,還想學會好多東西啊.. Orz
(謎之聲: 那你的課業咧.. 囧?)
在〈這篇是偽技術文件 囧〉中有 3 則留言
如果只是回覆通知或是認證信的話….用英文吧!
反正大家也不是看不懂…(默)
你修改phprojekt的UTF-8程式能不能提供給我.
我的郵箱[email protected]
qq:7575____
我只改了網頁顯示語系的部份,
而 lang/ 目錄中的檔案,只要用 iconv 去轉就可以了
轉換簡體字碼指令如下:
iconv -f gb2312 -t utf-8 原始檔 > 輸出檔
我轉換之後的語言檔為
tw_utf8.inc.php
下面列出我修改過的資料
- lib/languages.inc.php:
在最後加入
'tw_utf8' => 'TW, UTF-8'
別忘了上一項後面要加上 “,”
- lib/lib.inc.php:
在
else if ($langua=='jp') { $lcfg = 'charset=EUC-JP'; }
之後,加入
else if ($langua=='tw_utf8') { $lcfg = 'charset=utf-8'; }
最後一句
else { $lcfg = 'charset=iso-8859-1'; }
可改為
else { $lcfg = 'charset=utf-8'; }
只要資料庫與 PHP 設定正確,
網頁就可以使用 UTF-8 編碼了,
原始程式上是沒有太多問題的 :)