fbpx
分類
雜七雜八

這篇是偽技術文件 囧

最近在處理松韻的群組管理 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 則留言

我只改了網頁顯示語系的部份,
而 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 編碼了,
原始程式上是沒有太多問題的 :)

發表迴響