歡迎光臨, 訪客. 請先 登入註冊一個帳號.
四月 30, 2024, 04:58:22 上午
19595 文章 在 3865 主題 由 4580 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  支援  |  使用與操作  |  如何從資料庫裡USER資料表新增的欄位中抓取裡面的資料並顯示在BLOG上 « 上篇主題 下篇主題 »
頁: [1]
作者 主題: 如何從資料庫裡USER資料表新增的欄位中抓取裡面的資料並顯示在BLOG上  (閱讀 11090 次)
tim1019
新手見習
*
文章: 3


檢視個人資料
« 於: 三月 21, 2007, 06:21:52 上午 »

我在資料庫 的 USER資料表 新增了一個欄位

我想要 從資料庫新增的那個欄位中抓取其中的資料 在個人BLOG裡 顯示出來

想請問 應該要如何作呢?

我試者從 class/dao/userinfo.class.php 做修改 但還是無法成功

請幫忙解決我的疑問 感謝囉
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #1 於: 三月 21, 2007, 11:25:01 上午 »

你能先把你改了什麼先 post 上來嗎?這樣才能跟你說怎麼修改。

另外,如果你能說要加這個欄位的用途,說不定我還可以告訴你其他方式。

所以 .... 請先 post 上來啦!

Mark
已記錄

tim1019
新手見習
*
文章: 3


檢視個人資料
« 回覆文章 #2 於: 三月 21, 2007, 01:04:00 下午 »

你能先把你改了什麼先 post 上來嗎?這樣才能跟你說怎麼修改。

另外,如果你能說要加這個欄位的用途,說不定我還可以告訴你其他方式。

所以 .... 請先 post 上來啦!

Mark

感謝Mark大哥 回應

我在It_users 的資料表 新增了四個欄位 分別為cashbos_cod,shopbos_cod,cashbos,shopbos
這個欄位的 的用途 是 用來顯示紅利點數跟購物點數
因為我之前看LT 裡的變數 像是 {blog->getId()}會顯示BLOG的id編號 我就依此從class/dao/userinfo.class.php 新增 var $_cashbos_cod;(舉其一說明)
$this->_cashbos_cod = $cashbos_cod;
function getCash()
      {
         return $this->_cashbos_cod;
      }   
之後想說 這樣改之後 我打{blog->getCashbos_cod()} 應該會顯示出資料庫It_users 裡cashbos_cod的數值
但是 怎麼試就是不會顯示出來
麻煩Mark 大哥 教我如何改 才能秀出資料庫It_users 裡欄位的數值 感謝囉   
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 三月 21, 2007, 04:15:37 下午 »

如果你的這四項資料只是用來記錄紅利,而且是要直接透過 UserInfo 才能取出,那用 UserInfo 中的 setProperties() 與 getProperties() 會簡單一些。

例如

include_once( PLOG_CLASS_PATH."class/dao/uses.class.php" );
$users = new Users();
$userInfo = $users->getUserInfoFromId( 1 );

// 取出 userInfo 中的 property 屬性
$properties= $userInfo->getProperties();

// 修改紅利資料
$properties["cashbos_cod"] = 10;
$properties["shopbos_cod"] = 5;
$properties["cashbos"] = 100;
$properties["shopbos"] = 50;

// 存回紅利資料
$userInfo->setProperties( $properties );

// update users 資料庫
$users->updateUser( $userInfo );

如果你還需要查詢,例如誰的紅利大於 1000 點,就需要改 table 了。

那時,你除了要修改 table, 還要修改

class/dao/userdata/baseuserdataprovider.class.php 在 mapRow 加入相對應的欄位
calss/dao/userinfo.class.php 加入相對應欄位的 method.

Mark
已記錄

tim1019
新手見習
*
文章: 3


檢視個人資料
« 回覆文章 #4 於: 三月 21, 2007, 11:47:23 下午 »

如果你的這四項資料只是用來記錄紅利,而且是要直接透過 UserInfo 才能取出,那用 UserInfo 中的 setProperties() 與 getProperties() 會簡單一些。

例如

include_once( PLOG_CLASS_PATH."class/dao/uses.class.php" );
$users = new Users();
$userInfo = $users->getUserInfoFromId( 1 );

// 取出 userInfo 中的 property 屬性
$properties= $userInfo->getProperties();

// 修改紅利資料
$properties["cashbos_cod"] = 10;
$properties["shopbos_cod"] = 5;
$properties["cashbos"] = 100;
$properties["shopbos"] = 50;

// 存回紅利資料
$userInfo->setProperties( $properties );

// update users 資料庫
$users->updateUser( $userInfo );

如果你還需要查詢,例如誰的紅利大於 1000 點,就需要改 table 了。

那時,你除了要修改 table, 還要修改

class/dao/userdata/baseuserdataprovider.class.php 在 mapRow 加入相對應的欄位
calss/dao/userinfo.class.php 加入相對應欄位的 method.

Mark

感謝 Mark 的詳細解答
想請問??
假如 不用UserInfo 的方式 也有辦法取出資料嗎?
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #5 於: 三月 23, 2007, 01:41:59 上午 »

不用 userInfo? 不太懂你的意思。

如果你不用 LifeType 身的物件,你當然也可以直接透過 sql 來取出,只是在整合資料到前台時你就得要想辦法了。

Mark
已記錄

頁: [1]
LifeType 中文開發論壇  |  支援  |  使用與操作  |  如何從資料庫裡USER資料表新增的欄位中抓取裡面的資料並顯示在BLOG上 « 上篇主題 下篇主題 »
    前往: