2009年5月20日 星期三

[PHP] Pear - HTTP_Upload使用心得

如果有在使用Pear的人
相信對HTTP_Upload一定不默生
他是一套相當好用的檔案上傳套件
不過我最近發現一件事
不知道是他原本就有的問題
還是我程式沒有寫好

我們都知道HTTP_Upload支援多檔案上傳
只要使用

require_once 'HTTP/Upload.php';

$upload = new http_upload();
$files = $upload->getFiles();

foreach($files as $key => $value)
{
//處理每一個file
}


但是,如果<input type="file" name ="XXXX">這段tag是單純是由jQuery產生的
檔案就不會post給下一個頁面,只會出現error
不過如果網頁本身就有<input type="file" name ="XXXX">
混合jQuery產生的tag就可以將每個檔案傳出去

所以,目前我的解決方法就是不管有沒有要傳資料
那一段tag都要寫在網頁裡,然後display設為none
眼不見為淨,這樣就不會有file error的問題


參考文章:
http://andy.diimii.com/2008/12/pear%E6%AA%94%E6%A1%88%E4%B8%8A%E5%82%B3http_upload%E7%AF%84%E4%BE%8B%E8%A3%9C%E5%85%85/#more-149
http://phpeye.com/bbs/thread-310-1-1.html

2009年5月13日 星期三

在Google Blogger為程式碼上色的方法--使用SyntaxHighlighter 2.0(高亮度語法)

之前我在Blog寫程式的教學都只有單純的將code包起來
現在我可以幫我的程式碼上色了 ^Q^
其實是使用了SyntaxHighlighter 2.0
它主要是使用javascript幫你把code塗上顏色
看了很多人的教學文件
但是我目前只有下列方法跑的起來

Step1
在Blogger的"版面配置" 中點選 "修改HTML"

Step2
將下列程式碼貼在</head>之前


<link href='http://alexgorbatchev.com/pub/sh/2.0.320/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>
<link href='http://alexgorbatchev.com/pub/sh/2.0.320/styles/shCore.css' rel='stylesheet' type='text/css'/>

<script src='http://alexgorbatchev.com/pub/sh/2.0.320/scripts/shCore.js' type='text/javascript'/>
<script src='http://alexgorbatchev.com/pub/sh/2.0.320/scripts/shBrushPlain.js' type='text/javascript'/>
<script src='http://alexgorbatchev.com/pub/sh/2.0.320/scripts/shBrushXml.js' type='text/javascript'/>
<script src='http://alexgorbatchev.com/pub/sh/2.0.320/scripts/shBrushCss.js' type='text/javascript'/>
<script src='http://alexgorbatchev.com/pub/sh/2.0.320/scripts/shBrushJScript.js' type='text/javascript'/>


這裡包含了所需要的CSS和Javascript

Step 3

一樣把下列javascript程式碼貼在剛才貼上的路徑之後

<script type='text/javascript'>
SyntaxHighlighter.config.clipboardSwf = &#39;http://alexgorbatchev.com/pub/sh/2.0.320/scripts/clipboard.swf&#39;;
SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.all();
</script>


Step4
最後為了讓所有的瀏覽器可以支援
必須在CSS之中加入下面這段

pre {
overflow-x: auto; /* Use horizontal scroller if needed; for Firefox 2, not needed in Firefox 3 */
white-space: pre-wrap; /* css-3 */
white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
/* width: 99%; */
word-wrap: break-word; /* Internet Explorer 5.5+ */
}


貼完之後儲存設定,之後就可以使用下列方法將程式碼寫在Blogger中


<pre class="brush:html">
<pre >


最後要注意的是
所有的tag符號,如<
都必須轉換成HTML碼&lt;
這樣才不會出問題

如果懶自己改
可以到下列網址轉換

http://www.functions-online.com/htmlentities.html


主要參考來源:
http://blog.webunusual.com/2009/02/enlight-your-blogger-with.html

其它參考來源:
http://kkbruce.blogspot.com/2009/03/bloggoogle-bloggersyntaxhighlighter.html

http://keikoblog.blogspot.com/2009/03/blog.html

http://kkbruce.blogspot.com/2009/03/bloggoogle-bloggersyntaxhighlighter.html

http://code.google.com/p/syntaxhighlighter/


http://nio127.blogspot.com/2008/11/syntexhighlighter.html

2009年4月30日 星期四

[Mac] 清理Mighty Mouse

Mighty Mouse 用久了裡面都會卡一些髒東西
導致滾輪卡住而無法使用
所以,網路上有許多清理的方法

目前我有看到的方法如下:

1. 拿出一張白紙,把滑鼠反過來,讓軌跡球在白紙上用力的滾一滾。



2. 拿布沾液體(有看到漂白水、擦鏡頭的水)把它擦一擦。

參考:http://www.oikos.com.tw/v4/viewtopic.php?id=48985

3. 細膠帶深入清潔
請見:http://www.brendanfenn.com/cleanmouse.html

4. 大決!拆開來清。
分解篇:http://www.applestyle.com/mac/product_info.php?info=p722
保養篇:http://www.applestyle.com/mac/product_info.php?info=p725

另一篇有關拆解的文章:http://tw.myblog.yahoo.com/jw!goh8r3aWGRh1Mxfx_auxerOJj8H2/article?mid=146

======
其中
我試了第1,第3和第4種方法

第4種方法我拆到一半就放棄了

第3種方法 用細膠帶的確清出了一些髒髒的東西出來
不過我的滾輪還是只能往上滾,不能往下滾

就在我快要放棄它的時候
我試了第1個最簡單的方法
沒錯,如影片上所播放的
就是拿一張白紙出來
把mighty mouse 反過來用力給它在白紙上面滾來滾去
一定要用點力
這樣才能讓那些髒東西掉出來

很神奇的事情發生了
滾輪又正常的運作了
所以,還是最簡單的方法最有效
提供給大家參考

2009年4月1日 星期三

Latex-suite macro和基本指令的使用方法

在介紹完Latex-suite的安裝之後
http://hdj-berkeley.blogspot.com/2008/08/gvimcompile-latex.html

讓我來說明一些常用的指令

\ll compile latex
\lv 開啟compile完的檔案

預設是開啟dvi檔
如果想要開啟pdf檔
可以在C:\Program Files\Vim\vimfiles\ftplugin\tex.vim裡加入

let g:Tex_ViewRule_pdf = 'pdfopen --file'


有人將指令寫成了一個小抄,有興趣可以下載回來使用
http://users.physik.fu-berlin.de/~goerz/blog/wp-content/uploads/2008/09/vimlatexqrc.pdf


此外,底下舉一個使用macro的範例
假設我要寫一個表格
只要在輸入模式下打ETE
就會跑出以下內容:


\begin{table}
\centering
\begin{tabular}{<+dimensions+>}
<++>
\end{tabular}
\caption{<+Caption text+>}
\label{tab:<+label+>}
\end{table}<++>


其中的<++>是需要自己修改的欄位
可以使用ctrl+j切換
相當的便利

參考來源:
http://icespot.blogsome.com/2005/05/16/vim-latex-marco-%E7%AE%80%E6%98%8E%E6%8C%87%E5%8D%97/
http://vim-latex.sourceforge.net/documentation/latex-suite.html#latex-macros

2009年3月15日 星期日

[Mac] 如何收聽ICRT?

其實要在Mac上收聽ICRT並不難

只要到下列網址下載flip4mac

http://www.microsoft.com/windows/windowsmedia/player/wmcomponents.mspx


安裝完之後

就可以到

http://www.icrt.com.tw/en/D01.php

點選下點所示的地方,就會跑出一個新的視窗


這樣就OK啦

[Mac] 簡易訂閱Podcast教學

其實我個人不怎麼用iTunes的
因為第一次使用的時候
我只是想聽個MP3
沒想到iTunes就把MP3 copy到它預設的資料夾裡面
當時就不是很滿意這個動作
所以就沒有在繼續使用了

不過今天打算在MAC上聽個ICRT
發現ICRT有把他的EZ NEWS放在Podcast上
所以我就好奇的研究一下啦
其實國外還滿流行Podcast

如果需要了解何謂Podcast
可以先看看
http://blog.roodo.com/zacchen/archives/7448
68.html
http://www.apple.com/tw/itunes/whatson/podcasts/

底下附上兩個範例供大家參考~~

範例一
先介紹大家一個訂閱ICRT的基本範例

首先到ICRT Podcast 的頁面
http://www.icrt.com.tw/en/podcasts.php
複製Podcast的feed 如:
feed://www.icrt.com.tw/en/ext/rss/eznews.xml

接著點選iTunes上的“進階“ > “訂閱Podcast“
然後貼上剛才的網址
就會在你的“資料庫“底下的“Podcast“看到剛才新增加的Feed

範例二
由於看到大家都推薦iTunes本身提供的iTunes New Music Tuesday
所以我也去訂閱試聽了
訂閱的方法如下:

Step1
點選store中的"iTunes Store"
再點選Podcasts


Step2
在iTunes的右上角輸入要找的頻道,這裡我打了iTunes就有一些推薦的音樂和頻道跑出來



Step3
我搜尋了iTunes New Music Tuesday
也的確找到它啦
如下圖中橘色大方框
接著只要按下“SUBSCRIBE“也可以訂閱了,如綠色的文字說明
當然底下藍色說明的部份是另外一種訂閱的方法

Step4
再次按下確認鍵

Step5
再次回到“資料庫“的“Podcast“中,就會看到剛才訂閱的頻道啦~~

2009年3月3日 星期二

[Mac] 解決iTerm反應速度很慢的問題

這陣子使用MAC還算順手
但是terminal和iTerm都出現了一些問題讓我很頭痛

先說terminal好了
每次打字都會掉字,尤其是我連線到遠端的時候更明顯
也不能說是掉字,就是視窗內會有殘留的字
會讓人看到奇怪文字,或是上下兩行同內容
真正的內容則被蓋掉

這個問題依舊還沒有解決

第二個問題是iTerm的反應速度超慢
可能是因為我不是用原生的視窗大小
有放大了視窗,導致iTerm refresh的很慢
有時候打個ls都要等很久
更不用說我要打一長串指令
慢到受不了

不過後來我發現了解決的方法
就是將iTerm設定成全螢幕
這樣又可以看到很多行的程式
速度也相當的快
全螢幕的快捷鍵為 cmd + return

總算是解決了困擾我一個月的問題 :P
Related Posts Plugin for WordPress, Blogger...