2010年12月15日 星期三

ActionScript 3 - 使用loaderInfo.parameters取得傳入的參數

常見傳入參數的方式有兩種:
一種是透過網址的方式傳入,ex:my.swf?myParam1=參數1&myParam2=參數2
另一種是利用flashvars的方式傳入
在Flash裡可以使用ActionScript的loaderInfo.parameters取得傳入的參數
取值的方式有兩種:
root.loaderInfo.parameters.myParam1 root.loaderInfo.parameters["myParam1"] 以上兩種方式皆可取得

下面是我在網路搜尋到可以印出所有參數的一段code
但因為太快樂了,就把視窗關了,忘了把網址記下來,原作者發現了請原諒我...m( _ _ )m

JavaScript - 使用SWFObject在HTML插入Flash

如果常在網頁裡面插入Flash的朋友們應該會常遇到因為瀏覽器的不同而發生各種不同的狀況
現在已經有善心人士寫好一個共用的js
使用非常簡單、便利,這裡我也做一下紀錄

首先當然是先下載一下檔案囉~點我下載
接下來我們寫一些簡單的code將我們的flash插入網頁
Step 1:在<head></head>的部分將相關檔案include進來 Step 2:在要顯示Flash的地方放置以下的code Step 3:建立swf的語法 基本上,上面就可以顯示你的Flash了
如果還需要更多設定可以直接到官網查閱相關資料
點我前往

2010年9月14日 星期二

Java - 解析URL

文章出處:URL的具體分析
建立URL 解析URL 以下是我自己寫的:

Java - int 與String的轉換

文章來源:Java:整數(int)及 字串(String)的相互轉換方式
String → int
  1. int i = Integer.parseInt(str);
    或 int i = Integer.parseInt(str[, int radix])
  2. int i = Integer.valueOf(str).intValue();
int → String
  1. 1. String s = String.valueOf(i);
  2. 2. String s = Integer.toString(i);
  3. 3. String s = "" + i;
註:Dobule、Float及Long的轉換方式相同。

2010年6月29日 星期二

PHP - 常用正則表達式範例

這也是在網路上看到的,拿來這邊記錄一下
附上原文網址

匹配中文字符的正則表達式: [\u4e00-\u9fa5]
評註:匹配中文還真是個頭疼的事,有了這個表達式就好辦了
匹配雙字節字符(包括漢字在內):[^\x00-\xff]
評註:可以用來計算字符串的長度(一個雙字節字符長度計2,ASCII字符計1)
匹配空白行的正則表達式:\n\s*\r
評註:可以用來刪除空白行
匹配HTML標記的正則表達式:<(\S*?)[^>]*>.*?|<.*? />
評註:網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對於複雜的嵌套標記依舊無能為力
匹配首尾空白字符的正則表達式:^\s*|\s*$
評註:可以用來刪除行首行尾的空白字符(包括空格、製表符、換頁符等等),非常有用的表達式
匹配Email地址的正則表達式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
評註:表單驗證時很實用
匹配網址URL的正則表達式:[a-zA-z]+://[^\s]*
評註:網上流傳的版本功能很有限,上面這個基本可以滿足需求
匹配帳號是否合法(字母開頭,允許5-16字節,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]$
評註:表單驗證時很實用

匹配台灣身份證:[A-Za-z][1-2]\d{8}
評註:台灣的身份證為10位 雖然用運算規則. 不過這是簡易的
匹配ip地址:\d+\.\d+\.\d+\.\d+
評註:提取ip地址時有用
匹配特定數字:
^[1-9]\d*$    //匹配正整數
^-[1-9]\d*$   //匹配負整數
^-?[1-9]\d*$   //匹配整數
^[1-9]\d*|0$  //匹配非負整數(正整數 + 0)
^-[1-9]\d*|0$   //匹配非正整數(負整數 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮點數
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配負浮點數
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮點數
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非負浮點數(正浮點數 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮點數(負浮點數 + 0)
評註:處理大量數據時有用,具體應用時注意修正
匹配特定字符串:
^[A-Za-z]+$  //匹配由26個英文字母組成的字符串
^[A-Z]+$  //匹配由26個英文字母的大寫組成的字符串
^[a-z]+$  //匹配由26個英文字母的小寫組成的字符串
^[A-Za-z0-9]+$  //匹配由數字和26個英文字母組成的字符串
^\w+$  //匹配由數字、26個英文字母或者下劃線組成的字符串
評註:最基本也是最常用的一些表達式

2010年5月5日 星期三

修改Linux的系統時間

公司的案子常常會需要把程式上傳到客戶端環境做測試
但測試環境可能因為資安的考量,所以似乎不能隨便連到網路上
這時候如果發現系統時間跟實際時間不同時就會很傷腦筋
因為會搞不清楚程式到底是不是最新的
而且要安裝某些元件時也因為時間的關係會無法安裝

於是就上網找了一些方是同步一下時間
這裡有兩種方式可以同步時間,方式如下:
1.設定crontab,讓系統自動更新時間,設定如下: 2.下linux指令,手動更新系統時間,指令如下:
例如現在時間是:2010/5/6 PM 6:17,那麼就執行以下指令 執行完成後,時間就修改完成了 最後我們可以下一個指令將修改的時間寫入BIOS 恭喜你~系統時間已經修改完成囉

2010年2月4日 星期四

在Wamp Server上安裝Perl

在windows xp上安裝apache服務有很多種套件可以使用,而我是使用Wamp Server
感覺還不錯用,而且有親切的中文介面(其實是英文笨蛋一個),需要的可以至官網下載
下載位置:www.wampserver.com
安裝的步驟網路上已有許多教學文章,這裡就不再贅述了‧

接下來直接進入主題:在Wamp Server上安裝Perl
因為最近碰到perl寫的服務,看了很久還是不是很懂,它的語法實在是太簡潔了
真不知道是該說原創者太厲害還是太懶惰(其實是自己沒慧根..Orz)
於是就想說能不能找個地方來測試一下,之前Jim大就曾經提供一個套件,安裝了之後就可以在xp上執行,於是就下定決心來安裝一下
下載位置:www.activestate.com
其實官網還有其他東西,有興趣的人可以參考一下
安裝的步驟很簡單,就是下一步下一步,最後一個步驟要花一些時間,耐心等候一下
安裝的目錄預設在c:\perl,在安裝過程中可以自行修改
不過我想Perl是可以當作網頁來執行的,於是就想說能不能結合Wamp在local端執行
剛好網路上有一位不認識的大大有寫設定過程,不過是英文的所以花了一些時間拜讀
這裡我就用親切的中文來說明唄~喜歡看英文的朋友還是可以去看
原文網址:http://www.chromicdesign.com/2009/05/setting-up-perl-for-wampp.html

Step1:
這裡就是安裝Wamp Server,所以不再說明啦!!
Step2:
下載安裝ActivePerl,請往上看^^"
Step3:
從這裡開始很重要,因為要編輯apache的httpd.conf。不會使用右下角系統列的朋友可以從C:\wamp\bin\apache\apache2.x\conf進入‧
1.打開httpd.conf,找到“”往下幾行會找到一行的描述是:Options Indexes FollowSymLinks,我們在後面加入Includes ExecCGI,看起來會變成 2.開啟CGI script,找到“AddHandler cgi-script .cgi”,預設是註解掉的,把#刪除,並再下面加上一行“AddHandler cgi-script .pl” 3.找到“DirectoryIndex index.php index.php3 index.html index.htm“,並在後面加上“index.cgi and index.pl” 做完上面這三項之後,你的apache已經可以跑Perl了
Step4:
你可能需要透過Perl使用Mysql,如果需要的話,你要下載驅動程式來安裝‧
1.開啟command,切換到c:\perl\bin,然後輸入“ppm repo add uwinnipeg”按下Enter,系統會自動下載驅動程式
2.下載完成後,輸入“ppm install DBD-mysql”來安裝驅動程式

做完上面三個步驟,就可以在command和web上執行Perl囉~

2009年10月21日 星期三

jQuery - colorbox

最近公司的案子又需要用到lightbox的效果
因為之前用的在IE6上的效果都不好,所以又找了另一個不錯用的套件 - ColorBox
這個是Jim大找到的,我覺得還不錯用
官網左側有五個範例連結,各有不同的開啟效果,可以參考看看想用哪一種
以下來簡略說一下使用方法:
首先當然是先把它掛進來 另外他也有提供外框圖檔,如果要改變位置時記得要同步修改css檔
再來是javascript的部份,以下僅舉兩例: 最後是HTML的部份 在實測過程中發現用IE6開啟iframe時,第一次會無法顯示透明底色,要滾動一下scrollbar才會顯示
於是Jim大網路搜尋了一下,剛好有人也發現這個問題,並且找到了修正方式(好心人啊~)
修正方式要直接修改它的jQuery程式,以下是修正方式: 其實主要是修改trigger的部份
修改過後在IE6上使用感覺真讚^^"

由於客戶的需求,希望在開啟box時要隱藏scrollbar
所以上網搜尋了一下資料,果然也有人需要此效果
在此也放上解決方式,而且IE6也可以使用喔

2009年10月13日 星期二

jQuery - cascade多重關聯式選單

最常用到的就是地址,通常地址包括了縣市、鄉鎮,所以會有兩個關聯式的下拉式選單
其實本來是要自己寫javascript,但是因為配合的PHP & Smarty,還真是給他不好處理
所以決定上網找一個jQuery來使用,於是找到了這個相關資料,趕快來記錄一下,免的下一秒就忘了^^"
這裡是官網  這裡是範例
依照他的範例,頁面上需要置放一些code,首先是把相關的jQuery套件放進來: 再來是設定option2的javascript HTML code jQuery code 這裡我只是用第一個範例來舉例說明,範例網站還有許多用法可以參考

2009年9月17日 星期四

JavaScript - 取得目前網址以及其他資訊

這是我在網路上看到的,記錄一下,原文章

假設現在我有個網頁,網址是:http://functionlab.org:80/tools/tcpproxy.php?user=FUNction#showscript
如果這網頁上有以下JavaScript 程式碼 那該網頁會顯示:

2009年9月16日 星期三

MS SQL - 排序函數:ROW_NUMBER()、RANK() 與 DENSE_RANK()

這三個排序函數是MS SQL 2005之後的版本才有的,雖然公司寫的是PHP,但還是會遇到客戶使用MS SQL
然而最近遇到了排序會亂掉的問題,所以就上網搜尋了一下資料,於是在【旗標知識網】查到了一些很有用的資料,特別在此紀錄一下,希望【旗標】的大大不要生氣^^"

針對資料表的欄位進行排序
ROW_NUMBER() 可以依照指定的欄位將所有記錄進行排序, 然後再依照順利為每一筆記錄給 定一個序號,但如果指定的欄位資料一樣時,會依照其他依據來決定排名,因此名次不會相同。 以下是借用原文章的SQL語法 而 RANK()函數遇到相同的數值會給相同的排名, 其後的排名則會跳過。例如有三個第 2 名 時, 就不會有第 3 及第 4 名, 它會從第 5 名開始。RANK() 的用法與 ROW_UNMBER() 是類似的。 如果排名不想被自動跳過的話可以使用DENSE_RANK()函數。 指定查詢範圍
排序函數除了可以將所有記錄進行排序, 還能夠指定查詢第 M 筆到第 N 筆的記錄。我之前曾經寫過SQL 2000版本的語法,這裡我RANK()來撰寫,由於原文的例子似乎不是程式的語法,所以在這改用自己公司寫的例子來給大家看看 上面這個例子各位要注意一下inner join的位置,如果你是擺在最內層join的話,是沒問題的,但如果你像我一樣是擺在最外層才join,最後排出來的順序會亂跳,所以必須在最後加上order by 的語法將取得的資料排程你所需要的順序

2009年9月7日 星期一

jQuery - Curvy Corners讓div呈現圓角效果

網路上找到一個挺有趣的jQuery,可以在不使用圖檔的狀況下讓你的div外框呈現圓角
可以參考:http://blue-anvil.com/jquerycurvycorners/test.html
使用方法如下:

jQuery - css操作

很少用jQuery來設定css,特地上網搜尋到了以下資料,趕快來做一下筆記,希望對不小心來這的人也有幫助^^
jQuery提供了以下方法,來操作css:
background ()
background (val)
color()
color(val)
css(name)
css(prop)
css(key, value)
float()
float(val)
height()
height(val)
width()
width(val)
left()
left(val)
overflow()
overflow(val)
position()
position(val)
top()
top(val)

比較特別的是:css(name)、css(prop)、css(key, value)
css(name):取得name的樣式 css(prop):可以設定大量的css 會得到:<p id="b" style="background:blue; color:red">test</p>

css(key, value):設定單一css樣式

2009年8月8日 星期六

PHP - opendir 取得目錄下檔案

這個是在網路上看到的,也許以後用的到,就先留下來唄^^"

2009年7月17日 星期五

PHP - 使用parse_url, parse_str 來解析網址

由於工作上需要取得一串網址中的某個參數,所以上網搜尋了一下相關資訊,結果就找到parse_url這個函數
以下是此模組的官方說明 $component的部份包含PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY or PHP_URL_FRAGMENT 接下來我們來看範例: 輸出結果: 接下來我們可以使用parse_str這個函數來取的query值,以下為範例:

2009年7月14日 星期二

PHP - 檔案上傳$_FILES error錯誤說明

使用PHP上傳檔案是非常方便的,相信用過ASP的人都有同感吧
但是無法上傳時就會需要取得錯誤資訊,我們可以使用以下方式印出上傳檔案的所有資訊 這時畫面上會秀出類似以下資訊 如果"error"不是0的時候,代表有問題,那麼我們就可以參考以下狀況 上面的錯誤資訊是網路搜尋來的,如有錯誤請盡快告訴我喔^^

2009年5月7日 星期四

ASP - 去除 HTML TAG

其實就是跟PHP的strip_tags一樣,以下是在網路上搜尋到的

2009年4月15日 星期三

Linux - crontab指令

最近需要設定到排程,因此上網搜尋了一下crontab的指令,也請教了公司同事,
以下是我蒐集並整理的資料,有發現錯誤的話,煩請不吝賜教^^

crontab可以設定每個用戶的工作排程
參數說明:
crontab -u USER file
crontab -u USER [-e | -l | -r]
           -e 編輯該用戶crontab
           -l 列出該用戶crontab
           -r 刪除該用戶crontab

舉例說明:
# crontab -e:編輯目前登入用戶的crontab設定
# crontab -u ice -e:編輯用戶ice的crontab設定

crontab文件的格式:M H D m d cmd
M: 分鐘(0-59)。
H:小時(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期內的天(0~6,0為星期天)。
cmd要運行的程序

舉例說明:
#每5分鐘
*/5 * * * * cmd
#每小時
0 */1 * * * cmd
#每天早上9點與下午5點
0 9,17 * * * cmd

2009年4月3日 星期五

PEAR - QuickForm

QuickForm是PEAR建立表單的模組,方便設定表單的style與規則,直接看例子會比較清楚 以下是在網路上搜尋到的驗證規則表(原網址):
規則名稱 參數 規則描述
 required    必須輸入,不能為空
 maxlength  $length  最大字符長度
 minlength  $length  最小字符長度
 rangelength  $min,$max  字符長度的範圍
 regex  $rx  輸入的數據必須匹配給定的正則表達式
 email  true(forDNS heck)  驗證email地址的格式(有個可選的選項還可以查看域名是否有效)
 lettersonly    只能是英文字母
 alphanumeric    只能是英文字母或數字
 numeric    只能是數字
 nopunctuation    不能包含以下特殊字符: ( ) . / * ^ ? # ! @ $ % + = , " ' > < ~ [ ] { }.
 nonzero    不能為零
 compare    兩次輸入必須相同
 uploadedfile    表單元素必須包含正確上傳文件
 maxfilesize  $size  上傳文件的最大容量
 mimetype  $mime  上傳文件的類型,$mime可以是數組,則上傳文件的類型必須為其中一種
 filename  $file_rx  上傳的文件的名稱必須滿足給定的正則表達式

其中compare規則有點特殊,它是指兩個輸入欄位必須相同,例如密碼確認時。它的用法如下: 未完待續...

2009年4月2日 星期四

PEAR - MDB2

MDB2是PEAR連線資料庫的模組,以下是一般的用法 不過有問題的時候它顯示的錯誤訊息還真是給他清楚= ="
這時候可以在判斷連線DB的時候加上一段語法 這樣可以得到更多的訊息喔