隨記: MySQL 預設的字集是不分大小寫,所以…

o MySQL 預設的字集是不分大小寫 (not case sensitive)
. 所以 jjdai 和 JJDai 不可能同時加到一被設定成 primary key 的欄位。
. 要故意做大小寫比較的話可用:
SELECT * FROM ub WHERE nickname LIKE ‘JJDai’ COLLATE big5_bin;
SELECT * FROM ub WHERE nickname LIKE binary ‘jjdai’ LIMIT 0 , 30
. 將字集設定成 binary 即可區分出大小寫。

隨記: MySQL 表格中數字欄位有設定 auto_increment 屬性時

o 數字欄位有設定 auto_increment 屬性時
. 系統會記錄一個值當作下一個要加一的值。
. 要是手動新增一個值大於系統記錄的值,則系統會將他記錄的值設定成目前最大的那個。
. 手動新增一值小於系統記錄的值,則再讓系統自己決定值時,仍然以系統記錄的值加一。
. there can be only one auto column and it must be defined as a key.
. 重新設定 auto_increment 數值的方法: ALTER TABLE `t` AUTO_INCREMENT =7

[PHP]如何用程式刊登文章到 Google Blogger/blogspot 部落格

How To Post To Blogger with PHP?

以下將說明如何用 PHP 程式去刊登文章到 Google 的 blogspot 部落格. 在程式中我們會用到 Zend Framework 函式庫 (library) 的功能, 然後透過 Google blogger 之 feeds 介面來刊登文章到 Google blogspot 部落格; 文章中我們也嘗試將為 class SimpleCRUD 範例程式新增一個函式以更方便文章刊登. Continue reading “[PHP]如何用程式刊登文章到 Google Blogger/blogspot 部落格”

[PHP] 解決中文郵件寄件者, 收件者名稱, 信件標題亂碼問題

[PHP] 解決(非 ASCII 編碼)中文郵件寄件者或中文郵件收件者名稱, 或中文信件標題亂碼問題

在 PHP 程式中想要傳送一封含有非 ASCII 編碼(例如: UTF-8編碼)之信件寄件者或信件收件者名稱, 或郵件標題/主旨(subject) 的 email 時, 要根據 RFC 2047 [1] 對 “信件寄件者” 或 “信件收件者” 名稱, 或 “郵件標題/主旨” 做編碼後才能傳送, 不然會遇到亂碼問題 (寄件者或信件收件者名稱, 或郵件標題/主旨出現亂碼).

RFC 2047 中提到的編碼方式有以下兩種:
Continue reading “[PHP] 解決中文郵件寄件者, 收件者名稱, 信件標題亂碼問題”

[PHP] 用密件副本(BCC)傳送 email 的方法

How to send a B.C.C. E-mail in PHP?

在 PHP 程式中我們會用 mail() 函式來發送 email, 其 prototype 為:

bool mail ( string to, string subject, string message [, string additional_headers [, string additional_parameters]] )

其中必要的欄位有:

  1. to: 要送給誰
  2. subject: 信件的標題/主旨
  3. message: 信件內容

一般的使用程式範例: Continue reading “[PHP] 用密件副本(BCC)傳送 email 的方法”

[WEB][PHP] 關於網站線上人數統計的實做

[WEB][PHP] 關於網站線上人數統計的實做

如果網頁是使用 PHP 來寫的話,可以很容易做到基本的網站人數統計功能。

1. 去改寫 session 的處理方式,例如以下是將原本存到 file 的 session 資料變成存到 MySql 之類的 (memory) database. (註一):

去用 session_set_save_handler() 函式改寫 session 在

  • open(),
  • close(),
  • read(),
  • write(),
  • destroy(),
  • Gc()

時的處理方式。

其中: Continue reading “[WEB][PHP] 關於網站線上人數統計的實做”