phplist 標題亂碼問題
最近因應業務需要裝了一下 phplist。老實說在官方的demo site 就直接注意到嚴重的亂碼問題,連demo site都這樣亂成一團的東西其實我本人是不大想用的,這表示作者群不大有作業環境測試他國語系尤其東方語系的表現。倒不是說作者的程式技巧ㄧ定多不好:p (恩,不過作者的web安全觀念很差,居然用明碼存密碼…了不起。) 不過goo來goo去也沒什麼特別優秀的其他軟體,上游又對自行開發工具有成見…那就 phplist 勉強改一下好了。
找到一些相關設定技巧的文章,但由於時效性的問題,有些hack已經不能用了,雖然不能用,但還是非常有幫助。至少知道哪些檔案的哪些code是問題核心。廢話就說到這。
phplis 2.10.10 版, 電子報儲存之後標題和寄件人變成亂碼的問題修改方式如下:
找到 1034 行 , 原始碼應該長這樣
//value="'.htmlentities(iconv('ISO-8859-1','UTF-8',$subject),ENT_QUOTES,'UTF-8').'" size=40></td></tr>
改成
//value="'.htmlentities($subject,ENT_QUOTES,'UTF-8').'" size=40></td></tr>
下面的1040行, 原來的code
value="'.htmlentities(iconv('ISO-8859-1','UTF-8',$from),ENT_QUOTES,'UTF-8').'" size=40></td></tr>
改成
value="'.htmlentities($from,ENT_QUOTES,'UTF-8').'" size=40></td></tr>
WP plugin 文件編碼
又是一篇備忘筆記。
試著寫 wordpress 的 plugin, 當然從helloworld開始囉。本來一切還正常,不知何時忽然發現後台切換頁面時都會變空白,看來是php錯誤造成exit吧。停掉plugin就沒事了,所以當然問題就是這helloworld,但把幾乎全部的東西都dump光了還是照錯不誤實在太可疑了。最後終於發現兇手是: 文件編碼為UTF-8。(天音: 什麼?!不能用UTF-8是要怎樣!) 解答: 換成UTF-8 no BOM就可以了。(;´Д⊂) アウ…
[備忘]MySQL連線編碼
人老了真的記憶力變得很差(;´Д⊂) アウ… 才沒多久沒寫php連MySQL5,只記得MySQL那邊資料庫連線編碼要設好,資料庫編碼要設好,table也要設好,文字檔(文字編輯器)編碼也要改,完全忘記php這邊還要指定連線編碼orz。自我備忘一下,如果不想看到一堆????? php端程式還要記得加上這行:
mysql_query("SET CHARACTER SET 'utf8'", $link);
【歌詞】Melodies of Life
這是Final Fantasy系列中我非常喜歡的一首曲子。不久前買了Distant Worlds music from Final Fantasy 台北場的票,不知道海外場的陣容完整度如何。溫習了一下之前日本場Voices Music From Final Fantasy的影片,嗯,歌劇可以跳過,但實在很希望能聽到白鳥英美子現場演唱Melodies of Life啊~~~ 話說回來,這音樂會的票最高票價賣到一張不剩,完全看不出來經濟到底不景氣在哪裡了。最近日幣相對於台幣漲這麼多,四月要買到很貴的FF7ACC了,PS3主機似乎只能乖乖買亞版了。希望年底FF13發行的時後已經降回來了,當然,前提是FF13和versus13年底能発売…( ̄Д ̄;;
[日本語版]
宛てもなく彷徨っていた
手がかりもなく探しつづけた
あなたがくれた想い出を
心を癒す詩にして
約束もすることもなく
交わす言葉も決めたりもせず
抱きしめそして確かめた
日々は二度と帰らぬ
記憶の中の手を振るあなたは
わたしの名を呼ぶことが出来るの
あふれるその涙を
輝く勇気にかえて
いのちはつづく
夜を越え
疑うことのない明日へとつづく
飛ぶ鳥の向こうの空へ
いくつの記憶預けただろう
儚い希望も夢も
届かぬ場所に忘れて
めぐり逢うのは偶然と言えるの
別れる時が必ず来るのに
消えゆく運命でも
君が生きている限り
いのちはつづく
永遠に
その力の限りどこまでも
わたしが死のうとも
君が生きている限り
いのちはつづく
永遠に
その力の限りどこまでもつづく
[英語版]
Alone for a while I’ve been searching through the dark,
For traces of the love you left inside my lonely heart.
To weave by picking up the pieces that remain.
Melodies of Life – Love’s lost refrain.
Our paths they did cross, though I cannot say just why,
We met, we laughed, we held on fast, and then we said goodbye,
And who’ll hear the echoes of stories never told?
Let them ring out loud till they unfold.
In my dearest memories, I see you reaching out to me.
Though you’re gone, I still believe that you can call out my name.
A voice from the past, joining yours and mine.
Adding up the layers of harmony.
And so it goes, on and on.
Melodies of life.
To the sky beyond the flying birds -
forever and beyond.
So far and away, see the bird as it flies by,
Gliding through the shadows of the clouds up in the sky,
I’ve laid my memories and dreams upon those wings.
Leave them now and see what tommorow brings.
In your dearest memories, do you remember loving me?
Was it fate that brought us close and now leaves me behind?
A voice from the past, joining yours and mine.
Adding up the layers of harmony.
And so it goes, on and on.
Melodies of life.
To the sky beyond the flying birds -
forever and beyond.
If I should leave this lonely world behind.
Your voice will still remember our melody.
Now I know we’ll carry on.
Melodies of Life.
Come circle round and grow deep in our hearts,
as long as we remember.
在Mac OS X 上使用顏文字
從OS X變成我主要使用的作業環境之後,唯一比較大的煩惱就是日本語輸入時不知怎麼外掛顏文字詞書。昨天心血來潮又搜尋了一下,這次居然找到了ヽ(`▽´)/。找到兩個來源,一個是「NADの顔文字辞書(OS X版)3.7」解開後有說明可以參考安裝。另一個是「オレンジの顔文字辞書 for ことえり 3.1」。オレンジ的基本上對 Mac 的支援是只到OS 9 ,但在 OS X 上也是會動的。NAD 應該是針對 OS X 包的,不過個人比較喜歡オレンジ的配置跟顏文字。以下略略說明如何安裝。
1. 首先要解壓縮,這不用多說明,抓回來的東西點下去就對了,這樣的常識Mac族都有。
2. 接著找到包裝裡面的辭典檔。NAD解開後分兩種辭典擋,建議用「普通辞書」資料夾下的那個。オレンジ的則有 orange31-kz 和 orange31-kz-逆引 兩個,其實用前面那個應該就可以了。
3. 把辭典檔搬到或複製到 「個人家目錄下」> 資源庫 > Dictionaries 這個目錄下。
Unix 路徑為 /Users/<Yourname>/Library/Dictionaries
4. 右上角的輸入法Icon先切到日文隨便一種,按下Icon 選 「Kotoeri 偏好設定」,選「字典」。這時應該會看到「NADの顔文字辞書3.7」「Dictionary1」兩個詞書在裡面。
5. 選一本按下打開,書本會呈現打開的狀態。照理說這樣應該就已經enable詞書了,但可能要切換到其他的應用程式讓輸入法重新載入才會生效,這細節我不太確定。
比較特別的是Orange的那本詞書打開後好像立刻就有效了,但Kotoeri偏好設定中的那本Dictionary1也消失了…,有可能裝下去就無法移除了(汗) 。NAD 則可以正確打開和關閉,如果不喜歡他的詞書就可以直接關閉停用。但オレンジ的跟我之前在XP上用的比較接近,比較順手,無法移除就不跟他計較那麼多了。不管怎麼說,有顏文字可以用真是開心。(* ̄∇ ̄)/゜・:*【祝】*:・゜\( ̄∇ ̄*)
Mac OS X 軟體更新失敗
不確定從一年多前還是多久前開始 MBP上的軟體更新就有95%以上機會碰到「連線遭對方電腦重設,無法儲存檔案,下載的檔案已刪除」這樣的悲慘遭遇。(reset be peer) Google了很多次,確實有找到類似情形的文章,但全都是發問跟哀號文,沒有解答。得過且過到今天因為其他原因興起重灌os的念頭,於是稍做備份後clean reinstall了Leopard(夠狠吧)。重灌後第ㄧ次的軟體更新非常順利,幾百Mb的大包更新毫無障礙的安裝完畢重開機,正覺得非常開心之餘….第二次的軟體更新馬上翻臉不認人,reset by peer… reset by peer!!! 不過最少這告訴我們,可能是軟體更新的內部執行方式有了變化。根據這個新資訊又開始Google… 很好,還是只有發問文跟求救文。不過多聽到兩個重要的抱怨。一位user抱怨說他在不同地方結果不同,他懷疑問題是出在Linksys的router。另外一位則是打電話跟ISP抱怨過幾天後解決。老實說這兩種可能性我雖然都有想到,無奈我實在太懶一直沒試試看。今天既然都重灌系統了,一股做氣router也換換看吧。(有台買東西送的router一直沒拆封中:p )換router本身是很簡單,麻煩的是要把線藏好,於是經過一串灰頭土臉爬來爬去牽好線,進入軟體設定界面。雖然進界面後就很想馬上換回舊的,這某link的router的界面怎麼可以醜成這樣,在 mac 上看還破圖破很大(皺眉),忍著醜把設定做完後馬上開始軟體更新!老實說,完全出乎意料之外,問題解決了。(額頭上出現三十根黑線)所以結局就是醜陋的某link打贏了貴族3com… 遇到同樣情形的Mac User看完這篇不要傷心,雖然不是改改設定解決的做法,好歹是解決了阿~~~ 說不定改router設定就可以了。(不過其實原來的router我改過一些參數測了,都沒用)唔!缺水這麼久以來難得寫一篇居然是抱怨文…迅速飄走。
Update資訊: 這幾天又有不少更新,因為多裝了隨機光碟送的Bundle軟體,結果是大多數有順利下載,但最後還是被reset by peer。看來換router是有改善情形,不過沒解決問題就是了…。
[筆記]Conditional Compilation in Java
C/C++的專案裡面經常使用的Debug技巧之一,就是使用前處理器 #define #ifdef #endif 來夾住Debug程式碼。程式開發階段盡量詳細的捕捉可能出問題的情形並印出Debug訊息或中斷是非常重要的,但是這些處理”幾乎不會發生的情形”的程式碼當然會影響程式效能。使用#ifdef就可以直接在編譯時決定要生成release版本或是debug版本,非常的方便。最近在做一個小型的J2ME專案,因為確實是小型,沒有#ifdef可用也就算了。不過事後想想,Java這種常用在大型專案的語言沒有類似的功能不就麻煩大了?於是立刻來請教google大神。大神回答了!大神說,確實Java沒有真正的條件編譯可以用,不過要模仿#ifdef的功能是可以的。簡單說,Java 編譯器為了最佳化,只要發現條件式的值為false,編譯時就會把該區段忽略。所以只要定義一個 public final boolean 變數就可以了。例如:
public interface Debug
{
public final boolean ENABLE = true;
}
public class Hello
{
blahblahblah;
if(Debug.ENABLE)
{
System.out.println("This is debug message.");
}
}
萬事大吉可喜可賀。おめでたいおめでたい♪
【歌詞】Closer
NARUTO疾風傳最近的OP。 歌詞說實話其實有點老套,雖然老套但還是寫的很好。OP裡面的鹿丸看起來很帥,不愧是「シカマル疾風傳」。(由於劇情進入阿斯馬之死和鹿丸的復仇段落,某一話的Ending開玩笑說接下來動畫要改名阿斯馬疾風傳鹿丸疾風傳)
Closer
詞曲歌: 井上ジョー
身近にある物
常に気を付けていないと
余りに近すぎて
見失ってしまいそう
あなたが最近体験した
幸せは一体何ですか?
恵まれすぎていて
思い出せないかも!
今ここにいる事
息をしている事
ただそれだけの事が
奇跡だと気付く
You know the closer you get to something
The tougher it is to see it
And I’ll never take it for granted
Let’s go
人助けを偽善と
呼ぶ奴等もいるけれど
信じるのも疑うのも
人それぞれだから
たとえ仮にそれが
偽善であったとしても
誰かを救えたなら
そりゃむしろ何よりもリアル
追い続けてきた夢
あきらめずに進めよなんて
キレイ事を言えるほど
何も出来ちゃいないけど
一握りの勇気を胸に
明日を生き抜くために
And I’ll never take it for granted
Let’s go
錯過
張惠菁的「給冥王星」裡面有這樣一段:
最後一次見到你的路口,我現在才明白那原來是一條河,或是一道地層下陷,從那裡開始時間有了不同的轉速,我們再也不站立在同一個地面了。從軌道最靠近交錯的那一點,逸出朝向全然不同的宇宙。逐步擴張的距離,我曾經以為會是荒涼的,而今竟令我心安。所謂錯過,並不是什麼「如果那時再努力一點」,或「要是做了另一個決定」就好的事。從來都不是。那是兩個星系不同的軌道與規則。
而今在我的語言中,曾經佔用了「你」這個位置的星球,或許從來就不屬於這個太陽系。也正因為是那樣遙遠的軌道,才能在一直以來保有神祕與詩意。我可能在很久以前就下意識的理解了錯過的本質,我們的命運在那時就已經來到了最近的距離,往後只能漸行漸遠。
【歌詞】儚くも永久のカナシ
Gundam 00第二季的OP,雖然曲風不是我的菜,不過歌詞很不錯就偷偷收一下。專輯還沒發行,歌詞應該是日本粉絲聽打出來的,有正式版本之後再修正。題外話,第二季的天人制服是誰設計的阿,真是醜到可怕~”~
儚くも永久のカナシ
詞: TAKUYA 曲:克哉 TAKUYA 唱:UVERworld
愛が愛を重すぎるって理解を拒み
憎しみに変わっていく前に
何もかもがそうだろう バツの悪い事情にはいつもフタして
食わせもののリアル
歪んだジレンマ時代で 約束したはずの二人さえ
気づかず通りすぎていく
壊しあって 分かりあってた事も
置き去りにした
これが成れの果てなの?
認めないで 立ち向かった時の
落ちていく時のイメージから 逃げ出せずに
ああ、何度でも探し出すよ
きみの眼 その手のぬくもりを
「愛はいつも私を傷つけるだけ」って
きみは呟いて 信じることが
怖くて泣いたんだろう?
弱さを知って 強くなれ
恐れず信じることで
本当の愛を知るのだろう