1 頁 (共 1 頁)

所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-13 01:37
w91754
在海外,大多會員沒有中文軟件,故用英文入帳號。

中文姓名預先設在PROFILE_FIELD_DATA.PF_FULLNAME 數據內。

英文帳號仍是USERS_TABLE.username。

我嘗試用PROFILE_FIELD_DATA.PF_FULLNAME 代替USERS_TABLE.username,結果不成,是什麼原因?

下面是嘗試方法:

開啟
index.php

代碼: 選擇全部

$sql = 'SELECT u.user_id, u.username, u.user_colour, u.user_birthday
		FROM ' . USERS_TABLE . ' u
		LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
		WHERE (b.ban_id IS NULL
			OR b.ban_exclude = 1)
代替

代碼: 選擇全部

$sql = 'SELECT u.user_id, pf.pf_fullname as username, u.user_colour, u.user_birthday
		FROM ' . USERS_TABLE . ' u
		LEFT JOIN ' . PROFILE_FIELDS_DATA_TABLE . ' pf ON (u.user_id = pf.user_id)
		LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
				WHERE (b.ban_id IS NULL
			OR b.ban_exclude = 1)  
清除快取愉後,沒有結果。

照樣也試在SEARCH.PHP,viewtopic.php, viewonline.php, functions_posting.php等如上述類似代碼修改,一樣沒有結果。 :(

如君有知,請賜指導。謝謝!

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-16 23:29
w91754
請問:這個需要是否不可能解決? 謝謝!

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-17 10:58
心靈捕手
w91754 寫:請問:這個需要是否不可能解決? 謝謝!
請您先補充說明:您的中文姓名之設定過程。

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-17 14:54
w91754
心靈捕手 寫: 請您先補充說明:您的中文姓名之設定過程。
參考:
viewtopic.php?f=174&t=52073&hilit=%E8%8 ... 4%E4%BD%8D

"中文姓名"設定過程:
1) ACP > 會員及群組 > 自訂個人資料欄位 > 建立新的欄位
數據定義: PROFILE_FIELD_DATA
欄位定義: PF_FULLNAME (中文姓名)
欄位類型: 單行文字欄位

2) 顯示個人資料欄位: 是

3) 個人資料類型特定選項: 維持預設即可

4) ACP > 一般 > 伺服器組態 > 負荷設定 > 自訂個人資料欄位 > 允許風格在會員列表中顯示自訂個人資料欄位: 是

問題是:所有版面,想用中文姓名代替英文帳號,試過修改,請看前函,但不成。可能很難改,是嗎?有勞解答,謝謝!

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-17 14:59
心靈捕手
w91754 寫:
心靈捕手 寫: 請您先補充說明:您的中文姓名之設定過程。
參考:
viewtopic.php?f=174&t=52073&hilit=%E8%8 ... 4%E4%BD%8D

"中文姓名"設定過程:
1) ACP > 會員及群組 > 自訂個人資料欄位 > 建立新的欄位
數據定義: PROFILE_FIELD_DATA
欄位定義: PF_FULLNAME (中文姓名)
欄位類型: 單行文字欄位

2) 顯示個人資料欄位: 是

3) 個人資料類型特定選項: 維持預設即可

4) ACP > 一般 > 伺服器組態 > 負荷設定 > 自訂個人資料欄位 > 允許風格在會員列表中顯示自訂個人資料欄位: 是

問題是:所有版面,想用中文姓名代替英文帳號,試過修改,請看前函,但不成。可能很難改,是嗎?有勞解答,謝謝!
謝謝!我再抽空到測試論壇研究一下。請稍候!

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-17 23:49
心靈捕手
本想搜尋是否有可以套用的外掛,但是遍尋不著。

經我在測試論壇實做,是可行的;只是過程繁複;而且帳號是唯一,中文姓名則否。
您可以去測試看看,是否如您所要;我得重頭整理一下所有步驟,稍後再釋出分享。

測試帳號:goodluck
測試密碼:12345678

p.s.
您這個需求不必安裝外掛,也不必修改樣板檔;
所需要的只是自訂個人資料欄位與修改 *.php。

移動到「phpBB 3 安裝與使用」版面。

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-18 01:45
w91754
心靈捕手 寫:本想搜尋是否有可以套用的外掛,但是遍尋不著。
我也試過,找不到。但找到類似參考,不可能---
http://area51.phpbb.com/phpBB/viewtopic ... 6&start=10

http://www.phpbb.com/community/viewtopi ... 05&start=0

心靈捕手 寫:經我在測試論壇實做,是可行的;只是過程繁複;而且帳號是唯一,中文姓名則否。
您可以去測試看看,是否如您所要;
我只要英文帳號, 例如:goodluck, yilidall, admin (USERS_TABLE.username), 想換成 中文姓名 (PROFILE_FIELD_DATA.PF_FULLNAME)。

我試:

開啟
index.php

代碼: 選擇全部

$sql = 'SELECT u.user_id, u.username, u.user_colour, u.user_birthday
      FROM ' . USERS_TABLE . ' u
      LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
      WHERE (b.ban_id IS NULL
         OR b.ban_exclude = 1)
代替

代碼: 選擇全部

$sql = 'SELECT u.user_id, pf.pf_fullname as username, u.user_colour, u.user_birthday
      FROM ' . USERS_TABLE . ' u
      LEFT JOIN ' . PROFILE_FIELDS_DATA_TABLE . ' pf ON (u.user_id = pf.user_id)
      LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
            WHERE (b.ban_id IS NULL
         OR b.ban_exclude = 1)  
照樣在SEARCH.PHP,viewtopic.php, viewonline.php, functions_posting.php等如上述類似代碼修改。

清除快取後,結果不成。

相信這是富挑戰的測試。對嗎?

有勞解答,謝謝!

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-19 10:51
心靈捕手
w91754 寫: 我試:

開啟
index.php

代碼: 選擇全部

$sql = 'SELECT u.user_id, u.username, u.user_colour, u.user_birthday
      FROM ' . USERS_TABLE . ' u
      LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
      WHERE (b.ban_id IS NULL
         OR b.ban_exclude = 1)
代替

代碼: 選擇全部

$sql = 'SELECT u.user_id, pf.pf_fullname as username, u.user_colour, u.user_birthday
      FROM ' . USERS_TABLE . ' u
      LEFT JOIN ' . PROFILE_FIELDS_DATA_TABLE . ' pf ON (u.user_id = pf.user_id)
      LEFT JOIN ' . BANLIST_TABLE . " b ON (u.user_id = b.ban_userid)
            WHERE (b.ban_id IS NULL
         OR b.ban_exclude = 1)  
照樣在SEARCH.PHP,viewtopic.php, viewonline.php, functions_posting.php等如上述類似代碼修改。

清除快取後,結果不成。

相信這是富挑戰的測試。對嗎?

有勞解答,謝謝!
一般而言,極少有人會有這個需求。
因為要知道會員的中文姓名,只要瀏覽會員的個人資料、文章,甚至查詢會員列表即可。

我個人以為:
最重要的是中文姓名並非是唯一的,因此用它來取代原來的英文帳號,恐怕容易造成混亂,使得管理不易。

您的修改方向得先確立,以免徒勞無功:
  1. 依需求的頁面,查看樣板檔,找到關鍵的變數。
  2. 編輯相關的 *.php,加入查詢中文姓名,以及顯示中文姓名的代碼。

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-20 23:57
心靈捕手
請參考下列主題修改:
viewtopic.php?f=174&t=54284

Re: 所有版面,用中文姓名代替英文帳號。

發表於 : 2011-08-21 02:03
w91754
心靈捕手 寫:請參考下列主題修改:
viewtopic.php?f=174&t=54284
依心靈捕手老師指引,修改代碼,果然得心應手!在此代表海內外香港大同中學校友,萬分感謝。 (:Y) (:Y) (:Y)