Google App Engine SDK:python 基本教學安裝

Powered by Google App Engine Google App Engine 利用 python 程式語言所組成,可以利用 Google 背後的技術來開發您的 Web application,後端就交給 Google 的強大雲端運算能力,前端就可以利用 SDK 來開發您的 Web 介面,後端儲存可以用 Google Bigtable 及 GFS 的儲存方式,那現在就不多說了,花了一點時間把環境建立起來,遇到一些問題,現在來筆記一下,目前我在 FreeBSD 7.1 Release 來當作 Google App Engine 開發平台,在安裝方面有遇到一些小問題,底下來看看: 在 FreeBSD 安裝方法還蠻簡單的,首先把 python 環境弄好

# cd /usr/ports/lang/python25/
# make install clean
底下這張圖就是安裝好的結果:

GAE (by appleboy46)

[Read More]

PHP 5.2.9 Released!

PHP 在官網時間 26-Feb-2009 發佈 PHP 5.2.9 Released,這次的 Release 主要是在改善安全性跟修正超過 50 bug list,最主要的安全性修正如下: Security Enhancements and Fixes in PHP 5.2.9:

* Fixed security issue in imagerotate(), background colour isn’t validated correctly with a non truecolour image. Reported by Hamid Ebadi, APA Laboratory (Fixes CVE-2008-5498). (Scott) * Fixed a crash on extract in zip when files or directories entry names contain a relative path. (Pierre) * Fixed explode() behavior with empty string to respect negative limit. (Shire) * Fixed a segfault when malformed string is passed to json_decode(). (Scott) 大家可以參考這裡:5.2.9 Release,Change log

[Read More]
php 

[Google]Gmail 支援選擇多重檔案上傳跟進度狀況狀態 multi-select and progress bars

Gmail 推廣到現在,目前很多人都在使用,Gmail Blog 也開發許多模組讓大家使用,之前 Gmail 都不支援多重檔案選擇上傳,都必需要分別選取檔案,來達到多重上傳,而且每次上傳都不知道進度,也不確定是否上傳成功,現在 Gmail 改變了一些作法,來達到附件檔案上傳進度跟多重檔案選取,如果您要選取多個檔案上傳,您只要按住 Ctrl 加上檔案就可以多重選取了,相當方便,或者是按住 Shift 來達到大量選取檔案,可以參考此篇:Updates to attachments: multi-select and progress bars 底下就是 Gmail 上傳附件檔案的圖示: Gmail (by appleboy46)

[google] Gmail Multiple Inboxes 支援多重資料夾

今天玩了 Gmail Labs Google mail 的一項新功能:new lab:Multiple Inboxes,這不但可以讓您支援多重收件夾,可以多5個出來喔,支援 Labels 還可以使用 forward mail 到 gmail 在分類都可以喔,可以參考這篇:Tip: Manage several email accounts with Multiple Inboxes,步驟其實也相當簡單: 1. 先到 Settings 裡面選取 Labs 2. enable Multiple Inboxes 這樣就可以了 gmail Inboxes (by appleboy46)

[Read More]

[wordpress]update 2.6 -> 2.71

好久沒來升級 wordpress,發現升級過後,後台改的還真多阿,升級可以參考 [wordpress] 快速升級 Upgrade 2.5.0 -> 2.5.1 for Linux & FreeBSD,2.7.1 是 2.7 來維護的第一個版本,如果已經是版本 2.7 的話,可以利用後台 Tools->Upgrade menu 來升級,相當方便,不過我是利用 Subversion 的方式,2.7.1 版本修正了 68 tickets,底下可以看到 2.7 版本的畫面: 34680316838 (by appleboy46)

[FireFox] 安裝 google toolbar 使用 chrome Start page

在 darkhero 的 blog 發現了這篇 讓Firefox也有Chrome的StartPage,用起來發現還不錯,會記憶妳上過的網站,截圖放在首頁喔,那安裝方法很容易啦,就是 FireFox 的 Google Toolbar,非常方便。利用 Ctrl + T 就可以看到分頁功能了。

檢視您最常造訪的網站: 只要開啟新分頁即可檢視您最常造訪的網站。 畫面如下: google toolbar home page (by appleboy46)

[Google]Offline Gmail 新功能

今天看到 Gmail 的新功能:Offline Gmail 可以讓使用者離線瀏覽自己的 Gmail 信箱,看到 New in Labs: Offline Gmail 這篇,裡面有一個影片非常的詳細介紹了這個 Offline Gmail 的好處,它利用了 Gears 來下載您的 mail 資料放於 local cache,這 cache 可以自動地 synchronized Gmail’s Server,當您失去了網路連線,Gmail 就會自動切換到 offline mode,然後轉換存取到您的電腦硬碟,來取代網路連線的模式。 底下是 google 的一段影片

[Read More]

[javascript]判斷中文全形字數有幾個

在 ptt bbs 的 AJAX 版討論到如何判斷計算有幾個中文字數,那 TonyQ 兄跟 toshii 兄分別提供了兩種方法,我自己測試了一下包含全形字型,如:?,。…這些都算喔,我自己想到 中華電信 emome 的簡訊系統也會有判斷數字加上英文跟中文字的算法,看了一下大致上都是相同的。 TonyQ 解法:

/*
利用 regex pattern
*/
function chineseCount(word){
    return word.split(/[\u4e00-\u9a05]/).length -1;
}

var word="test中asd文asd字as到底asd有幾asd個?";
alert(chineseCount(word));
[Read More]

[FreeBSD筆記] 快速搜尋 ports 軟體 psearch

在 FreeBSD 內建的搜尋 ports 指令搜尋速度有點慢,加上搜尋出來還蠻難找的,所以推薦一個搜尋 ports 軟體:psearch,支援 regular expression 安裝方式:

#
# ports 安裝
#
cd /usr/ports/ports-mgmt/psearch
make install clean
rehash;
使用方法:
options:
  -V, --version        顯示版本資訊
  -h, --help           顯示 help 資訊
  -c CATEGORY, --category=CATEGORY
                       快速搜尋方式,可以指定資料夾,例如:www,chinese
  -f FILE, --file=FILE 指定 INDEX 的檔案 Default: "/usr/ports/INDEX-7"
  -l, --long           顯示詳細的 ports 資訊介紹
  -m, --maintainer     取代 ports 的簡短訊息,顯示維護者資訊
                       也可以搜尋 ports 的維護者所有維護的 ports
  -n, --name           顯示標準的訊息,基本的版本訊息
  -o, --or             搜尋任何符合 PATTERN 的 ports 資訊
  -s, --search_long    顯示 ports 詳細的資訊,速度較慢
  -v INVERSE_PATTERN, --inverse=INVERSE_PATTERN
                       反向搜尋 ports 名稱
[Read More]

[jQuery]判斷 checkbox 是否選取,實現全選跟全部取消

在 jQuery 底下要如何實現這個功能,其實還蠻簡單的,首先看 html 部份

1
2
3
4
5
6
<input name="user_active_col[]" type="checkbox" value="1"> 1
<input name="user_active_col[]" type="checkbox" value="2"> 2
<input name="user_active_col[]" type="checkbox" value="3"> 3
<input name="user_active_col[]" type="checkbox" value="4"> 4
<input name="user_active_col[]" type="checkbox" value="5"> 5
<input name="clickAll" id="clickAll" type="checkbox"> 全選
[Read More]