2012/11/17

攝影打工初體驗

學生時期,只做過軟體開發類的打工,攝影類型的工作還是頭一遭。

前陣子透過「影像紀錄區」的攝影履歷功能,收到外部的攝影專案發包訊息,是台南市新光三越西門店週年慶活動,徵求攝影師為活動做記錄。

平常都是拍風景與研討會居多,這次是魔術表演與氣球藝術創作,非常特別。氣球師父不到一分鐘可以把長條形氣球折成刀、劍、槍,還有超強的生氣鳥帽子!最好笑的是魔術師表演結束時觀眾的表情!


ps. 好家在魔術師沒有把我的工讀金變不見 XDDDD

2012/11/14

CodeIgniter 安裝與設定

CodeIgniter 是個輕巧的 PHP framework,支援 MVC 架構、詳細的文件、還有外掛可以裝。若是第一次使用 PHP framework,CodeIgniter 會是個不錯的選擇。


安裝


到官方網站的下載頁面把壓縮檔抓回來,解壓縮到網站目錄下:

wget http://codeigniter.com/download.php -O codeigniter.zip
unzip codeigniter -d ~/public_html

Done.

Use FuelPHP oil Generate Model and Migration

FuelPHP 的 oil 提供快速建立 model 和 migration 的方法,例如要建立一資料表存放使用者帳號:
oil g model users id:int username:varvhar[100] email:varchar[200]

oil 則會幫你產生 table 的 migration:
<?php

namespace Fuel\Migrations;

class Create_users
{
   public function up()
   {
      \DBUtil::create_table('users', array(
         'id' => array('constraint' => 11, 'type' => 'int'),
         'username' => array('constraint' => 100, 'type' => 'varvhar'),
         'email' => array('constraint' => 200, 'type' => 'varchar'),
         'created_at' => array('constraint' => 11, 'type' => 'int'),
         'updated_at' => array('constraint' => 11, 'type' => 'int'),

      ), array('id'));
   }

   public function down()
   {
      \DBUtil::drop_table('users');
   }
}

其中 id 自動被當作 primary key,沒有設定 auto_increment。

若要建立一個資料表,需要有欄位「id」當作 primary key 且設定 auto_increment 屬性,可以將「id」從 oil 參數中去掉,當 oil 偵測到資料表沒有欄位名稱包含 id 且沒辦法設定 primary key 時,便會自動新增一個「id」的欄位:
   public function up()
   {
      \DBUtil::create_table('users', array(
         'id' => array('constraint' => 11, 'type' => 'int', 'auto_increment' => true),
         'username' => array('constraint' => 100, 'type' => 'varchar'),
         'email' => array('constraint' => 200, 'type' => 'varchar'),
         'created_at' => array('constraint' => 11, 'type' => 'int'),
         'updated_at' => array('constraint' => 11, 'type' => 'int'),

      ), array('id'));
   }

oil 的參數中很清楚標示欄位的設定為 fieldname:type,沒辦法加入其他欄位屬性。假設要為欄位加上其他屬性,像是 null、index 等,則必須在 oil 產生 migration 以後,手動在 migration 中新增自己需要的屬性。

ps. oil 還會偵測資料表名稱,migration 會將資料表名稱改成複數。

2012/11/06

YouTube HD Suite on Chrome

新版的 Chrome 已經無法安裝未透過 Chrome Web Store 驗證的外掛,但可以透過 Tampermonkey 載入。

先安裝 Tampermonkey
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo

安裝好後,便可以透過 Tampermonkey 再載入 YouTube HD Suite


ps. Tampermonkey 雖然可以載入第三方外掛,但執行不明外掛還是會有安全上的疑慮,請記得先確認外掛安全性。