Technical support2007/11/12 14:48
views: 1536 times
超大字體(180%)放大字體(130%)原始字體(100%)
先聊一下先前的 mysql.class.phpm

Class 的應用示範應該不是什麼很困難的東西,首先先把 mysql.class.phpm 裡面的 $dbname, $dbuser, $dbpw 填上你的主機設定值。這裡有個需要注意的地方,有些 *NIX 主機對於 localhost 可能有點感冒,或者是你的 mysql 使用者權限主機並非設定為 localhost,那麼你就必須修改 $dbhost 這個值。

改好之後存檔,來測試一下是否能正確連線。你可以開啟 tracingError 模式,也就是將 $tracingError = true; 來啟動操作過程追蹤,切記要設定 $Log 的路徑且權限要 apache 可寫入。

設定好之後,寫支小檔案來測試一下。

畫面中會列出你的這個資料庫中的所有資料表名稱。這是一個很簡單的例子,這個 mysql 類別也只是做一些蠻稀鬆平常的處理而已,有興趣的人可以把所有 public 開頭的 function 全部看一下,除了 get_Sql 比較常用之外,其他的你要刪除我也不反對。

再來看一下 usersession.class.phpm 這個自製類別。說在最前頭的,這是參考 Professional PHP5 所提供的範例所製作的,所以程式碼內容的架構幾乎都是參考該本書內的範例,該書的程式原始碼內容可以在該官方網站中取得

這一個類並不需要設定,但是它必須要搭配 mysql.class.phpm 使用,否則資料庫連線無法建立。或者是,你可以將我已經寫好的資料庫操作全部修改掉,這樣就不用依靠 mysql.class.phpm 這一個類了。

另外,這個類需要三個資料表,文末會一併附上 .sql 檔案。

內部的函式有:
  1. Impress(),觸發 session 並更新資料庫中的 last_impression 時間。
  2. IsLoggedIn(),檢查是否登入。
  3. GetUserID(),提取使用者 ID (此 ID 為 user 資料表中的主鍵值)。
  4. GetUserObject(),搭配 User 類取出特定 User 資料,此類為書中所建置的類,我在下一篇會說明書中這個類的應用。
  5. GetSessionIdentifier(),傳回 php session id.
  6. Login($strUsername, $strPlainPassword),做登入動作,需傳入 username 與 user password.
  7. LogOut(),登出。
  8. __get($nm),取出記錄於 session 的值。
  9. __set($nm, $val),設定變數值儲存於 session 中。
附上檔案:注意一下,.sql 檔案中有 users 資料表,若你已經有此表,請不要直接匯入這個檔案,避免你自己的 users 表被刪除覆蓋喔!

創用 CC 授權
Creative Commons License
本創作適用 姓名標示-非商業性-禁止改作 3.0 創用 CC 授權,台灣並依循所適用的授權條款。

Bookmarks  HEMiDEMi  Technorati  Del.icio.us  Digg  funP  Yahoo!  Furl
Writer profile
author image
偏執與強迫症的患者,算不上是無可救藥,只是我已經遇上我的良醫了。
Posted by hina

Trackback URL : http://hina.ushiisland.net/blog/hinablue/trackback/419

Leave your greetings.

[登入][OpenID是?]