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 即可區分出大小寫。
Category: 實作
隨記: 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 與 MySQL 間的字集校對問題
以下以問與答的方式來討論 PHP 與 MySQL 間的字集校對問題: Continue reading “關於修正 PHP 與 MySQL 間的字集校對問題”
[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] 如何傳送一封 MIME / HTML 格式的 email 信件
Simple codes to send the MIME / HTML email with PHP
一般我們使用 PHP 程式傳送文字 email (text email) 可以很直覺地填寫好 message 欄位即可將信件送出, 但是如果想在 PHP 程式中傳送一封 HTML 格式的 email (HTML email) 則需要做一些小改變:
- 需要決定信件內容的 charset
- 需要設定 MIME 版本和 Content-type header 內容
[PHP] 用密件副本(BCC)傳送 email 的方法
How to send a B.C.C. E-mail in PHP?
在 PHP 程式中我們會用 mail() 函式來發送 email, 其 prototype 為:
其中必要的欄位有:
- to: 要送給誰
- subject: 信件的標題/主旨
- message: 信件內容
[WEB][PHP] 關於網站線上人數統計的實做
[WEB][PHP] 關於網站線上人數統計的實做
如果網頁是使用 PHP 來寫的話,可以很容易做到基本的網站人數統計功能。
1. 去改寫 session 的處理方式,例如以下是將原本存到 file 的 session 資料變成存到 MySql 之類的 (memory) database. (註一):
去用 session_set_save_handler() 函式改寫 session 在
- open(),
- close(),
- read(),
- write(),
- destroy(),
- Gc()
時的處理方式。