[Facebook App] 應用程式開發筆記

Standard

隨手記一下幾個要點,有些是從開發者論壇中找到的,有空會再確認是否是正確的做法。

  1. 以 iframe canvas 模式開發時,要傳遞 POST 變數,form 的 action 可以寫成 action=”save.php?“。這樣在 save.php 就能取得變數。
  2. iframe 頁面自適大小:FB_RequireFeatures 中加入 FB.CanvasClient.startTimerToSizeToContent();,且在 IFrame 大小選擇 Resizable。
  3. FBML 模式中,圖片、CSS 的位置都要寫真實的位置 .. 此外,圖片若會出現一條線的破圖狀況,需加 img { display:block; } 的 CSS。
  4. Facebook API (PHP) 判斷是否為粉絲:
    [code language=”PHP”]
    $facebook->api_client->pages_isFan(‘粉絲團ID值’, ‘使用者FB ID’);
    會返回 Boolean 值。
    [/code]
  5. 非粉絲的畫面要加一個讓使用者點擊就能加入粉絲團的按鈕:
    [code language=”HTML”]
    <iframe scrolling="no" frameborder="0" src="http://www.facebook.com/connect/connect.php?id=粉絲團ID&connections=0&stream=0&locale=zh_TW" allowtransparency="true" style="border: none; width: 280px; height: 65px;"></iframe>
    [/code]

    好吧,我還是習慣叫它加入粉絲團。加入粉絲團現在改成「讚」了喔。

先醬子,有空再做整理囉。

[AS3] 子影片讀取主影片的參數 (ADDED_TO_STAGE)

Standard

場景上的主影片使用 loader 將子影片 load 進來,然後子影片欲取得主影片設定的變數(如本例的 foo),有時候會發生抓不到的情況,但別支子影片卻正常,Google 了一下,找到要用 ADDED_TO_STAGE 這個事件做處理。
確保已經被載入到主場景上,此時再去抓該變數。

addEventListener(Event.ADDED_TO_STAGE, enterDLHandle);
function enterDLHandle(e:Event):void {
  var ROOT = stage.getChildAt(0);
  trace(ROOT.foo);
}

ActionScript 又是另一個領域了,要學習的還很多啊。

[MSSQL] 將資料以特定條件排序後,加上序號並寫回欄位

Standard

問題:資料原本以 sortid 欄位做排序,後台設計可上下調整排序,但某種情況下 sortid 欄位的值產生重複,造成無法正常變更排序。
因此欲重新以 sortid 排序後,加上 ROW_NUMBER() 索引,並將該索引值寫回 sortid 欄位。

環境:MS SQL SERVER 2005

Continue reading

[FreeBSD] ports 安裝舊版本 (以 ImageMagick 為例)

Standard

最近需要用到 ImageMagick,而 ports 上最新的版本是 6.6.0-10 ,但似乎安裝過程中會 make 失敗,所以試著安裝舊的版本。

首先要修改 ports-supfile,在 *default 下多增加一行欲更新軟體版本推出的時間,可以去 http://www.freshports.org 查詢,以本例來說,我想安裝 6.5.7.10 版,推出的時間為 02 Dec 2009 18:54:03,我可以輸入:

Continue reading

[ASP.NET] 在文字框中按下 Enter 指定按下某顆送出鈕

Standard

在作專案的時候遇到的問題。當我在某文字框按下 Enter 要做送出時,卻不是送出該文字框對應的送出鈕(文字框控制項有對應的送出鈕的屬性嗎?好像沒看到…)。

網上有些作法是 Code Behind 中將該文字框加上 Enter 的 keycode 偵測,再 return false; ,使送出失效,但不是很好的作法,對使用者不是很友善哩。再找了一下,以下這種方法就能對應想要的送出鈕了。

對了,這種方法也可以通用於加上 UpdatePanel 的頁面,不會只有第一次有效。

txtSearch.Attributes.Add("onkeydown", "if (event.keyCode==13) { document.getElementById('" + btnSearch.ClientID + "').focus();return true; }")

註:txtSearch 是文字框控制項 ID,而 btnSearch 是送出鈕控制項。

出處:http://forums.asp.net/p/1121832/1757434.aspx