[Pear] 利用 Validate 套件驗證 E-mail 多重表單認證

最近都在玩 open source 的程式,方便加速自己開發 PHP 的專案,在申請帳號密碼部份就可以利用 Validate 套件來驗證,以及 email 填寫正確性,可以檢查 MX 或者是 A record 紀錄,還蠻方便的,也可以檢查 multiple 欄位,設計的相當不錯,也有金融相關套件可以驗證 CreditCard,金融套件名稱是 Validate_Finance 裡面的 Validate_Finance_CreditCard 部份,線上也有很多相關說明,可以參考 Validate 線上手冊,目前已經到 0.8.2 (beta),如果使用 Release 版本,請選用 0.8.1,軟體可以在此下載,0.8.2 是在 2009-01-31 Release 出來的,還不錯用,最主要的功能如下
Package to validate various datas. It includes : – numbers (min/max, decimal or not) – email (syntax, domain check, rfc822) – string (predifined type alpha upper and/or lowercase, numeric,…) – date (min, max, rfc822 compliant) – uri (RFC2396) – possibility valid multiple data with a single method call (::multiple)
  1. 驗證各種不同的日期函式
  2. 驗證數字(最小/最大,是否是10進位)
  3. email 驗證(正規語法驗證,check domain name 是否存在,rfc822 驗證)
  4. 字串驗證(正規語法驗證,是否包含數字英文字母,可輸入最長或最短)
  5. url 驗證(遵從 RFC2396 規定)
  6. 多重欄位(multiple data)驗證(可以同時驗證上述功能)
Continue reading “[Pear] 利用 Validate 套件驗證 E-mail 多重表單認證”

[Windows] Appserv 安裝 pear 套件

最近要在 Windows 上面安裝 Apache + MySQL + PHP,我選擇利用懶人包安裝方法:Appserv,目前版本為 AppServ 2.5.10 跟 AppServ 2.6.0,如果您要寫 PHP5 的話,就選擇安裝 AppServ 2.5.10,目前支援到 PHP 5.2.6,不過我上次已經看到 PHP 5.2.9 Released 了,如果想要支援 PHP6,那就選擇 AppServ 2.6.0 這個版本,不過我建議新手可以安裝 AppServ 2.5.10,這個版本比較穩定,安裝好之後,也有支援 phpMyAdmin,底下是 2.5.10 支援的套件:
* Apache 2.2.8 * PHP 5.2.6 * MySQL 5.0.51b * phpMyAdmin-2.10.3
今天要安裝 pear 的套件在 Windows 上面,不過不用緊張,因為 Appserv 已經把 Pear 的模組包進來裡面了,只要執行 .bat 檔,按照視窗,就可以完成安裝了,自己平常有用 Pear 的 HTTP_Upload 多重檔案上傳 Multiple files upload,跟 PEAR – PHP Mail and Mail_Mime 模組,底下就是 Windows 的安裝方法: Continue reading “[Windows] Appserv 安裝 pear 套件”

[PHP]解決 PEAR::Mail_Mime 標題 UTF-8 亂碼問題(不能顯示)

話說大家在寫 PHP 的時候,一定會很常用到 mail 這個函式,畢竟一個網站一定會有很多需要用到寄信的地方,我先給大家推薦一下 PEAR::Mail_MimePEAR::Mail 這兩個 Pear 的套件,用起來相當不錯,支援 html 跟 UTF-8 或者是 Big5 編碼,我之前寫過一篇 [PHP] 好用的 PEAR – PHP Mail and Mail_Mime,裡面寫的還蠻詳細的,不過上次有一個問題還沒解決,就是如果用 UTF-8 編碼的標題,會顯示不出來,Gmail 收到的話就會是 no subject,然後昨天用了一個非常笨的解決方法,改成把標題使用 Big5 就可以了,解決方法如下: Update:感謝 darkhero 提供解決方法: 如果要用 UTF-8 的標題:
  $param['head_charset'] = 'utf-8';
  $hdrs = array(
                'From'    => 'appleboy.tw@gmail.com',
                'Subject' => '=?utf8?B?' . base64_encode($subj) . '?=', 
                'Content-type' => 'text/html; charset=utf-8'
                ); 
先讓主機支援 PEAR:
#
#  FreeBSD ports 安裝
cd /usr/ports/devel/pear
make install clean
Continue reading “[PHP]解決 PEAR::Mail_Mime 標題 UTF-8 亂碼問題(不能顯示)”

[PHP] 好用的 PEAR – PHP Mail and Mail_Mime

今天在寫期末的 Project,我的專題是寫無線 802.1X 認證,搭配 FreeBADIUS Server,然後我在搭配網頁整合認證機制,然後我在做使用者帳號申請部份,需要靠 Email 認證,但是我去看官網,介紹好像也沒什麼,在寄信的時候常常會遇到亂碼,不然就是寄信 html 部份會有問題,或者是不能附加檔案之類的,然後網路上找不到一個好用的 class ,所以就用了 PEAR::Mail_MimePEAR::Mail,這兩個套件還不錯用,如果想寄單純的信件,就用 PEAR::Mail 這個就可以了,如果要搭配 html 網頁,就要搭上 PEAR::Mail_Mime Continue reading “[PHP] 好用的 PEAR – PHP Mail and Mail_Mime”