[問題] 引言原發表者稱呼怎麼改成「匿稱」

phpBB 2 MOD Support
無論是官方或非官方認證之外掛,安裝與使用問題討論。
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

主題已鎖定
two
星球普通子民
星球普通子民
文章: 20
註冊時間: 2003-07-02 15:34
來自: 北極島上的冰塊

[問題] 引言原發表者稱呼怎麼改成「匿稱」

文章 two »

問題外掛:引言稱呼如何變成匿稱
參考連結:
使用版本:phpBB 2.0.6
網站位置:未架設好
狀況描述:

目前設試架設的phpbb論壇有掛上 會員暱稱 Change User Nick Name的外掛
是成功了!但…引言的部份還都是出現會員名稱,而不是會員暱稱
\r
比方說…原來的會員名稱是 ABCD ,會員暱稱是 1234
在引言的部份會是\r
ABCD 寫:test
而不是\r
1234 寫:test
如果要改,要改哪呢?
動機不明
喝咖啡的綠皮猴
喝咖啡的綠皮猴
文章: 1179
註冊時間: 2002-03-06 20:37
來自: GOP (重啟)

文章 動機不明 »

應該是改 bbcode (檔名忘了,找找看吧!)
只要換掉 user_name(or user_id ? 忘了...) 為 user_nickname(Change User Nick Name 的欄位名稱是啥我不知道) 就可以 ^^
非官方外掛問題區公告: [必看]請配合發問格式及明確主題發問(2006 02/24更新)
七點要求:
1. 發問前先搜尋,確定沒有重複後再發表
2. 主題要明確
3. 依照發問格式
4. 禁連續推文
5. 請盡量減少使用地方性語言
6. 解決問題後請修改第一篇主題,並感謝曾經幫過你的前輩們 ^^
7. 請不要將檔案內容完整貼出喔! 只要提供問題行及上下各五行就可以了
two
星球普通子民
星球普通子民
文章: 20
註冊時間: 2003-07-02 15:34
來自: 北極島上的冰塊

文章 two »

動機不明 寫:應該是改 bbcode (檔名忘了,找找看吧!)
只要換掉 user_name(or user_id ? 忘了...) 為 user_nickname(Change User Nick Name 的欄位名稱是啥我不知道) 就可以 ^^
我找到bbcode

代碼: 選擇全部

$bbcode_tpl['quote_username_open'] = str_replace('{USERNAME}', '\\\1', $bbcode_tpl['quote_username_open']);
改成

代碼: 選擇全部

$bbcode_tpl['quote_username_open'] = str_replace('{NICKNAME}', '\\\1', $bbcode_tpl['quote_username_open']);
結果變成
{USERNAME} 寫:TEST
那我是哪裡還需要改?
還是我改錯什麼地方了?
messagebox
竹貓忠實會員
竹貓忠實會員
文章: 981
註冊時間: 2003-02-24 23:34

文章 messagebox »

[php]
$bbcode_tpl['quote_username_open'] = str_replace('{NICKNAME}', '\\\1', $bbcode_tpl['quote_username_open']);

//這段表示說將$bbcode_tpl['quote_username_open']字串裡面的{NICKNAME}字串取代為\1字串\r
//然後這個\1不知道在哪會變成傳說中的ID,不過我就是找不到(OK~我承認我懶的找)
[/php]
ok~首先請恢復原狀~~~
剛剛試一下~~
發現一個問題~~
如果是別人亂打的呢~~
那會找不到暱稱~~~

我想到解決方式是在引言的地方改成這樣\r
[php]
/******開啟posting.php*****/
/*****尋找*****/
$quote_username = ( !empty($post_info['post_username']) ) ? $post_info['post_username'] : $post_info['username'];
/*****取代為*****/
$this_post_id = $post_info['poster_id']; //將使用者ID取出\r
$sql = "SELECT * FROM ".USERS_TABLE." WHERE post_id = $this_post_id";
if( !($result = $db->sql_query($sql)) ){message_die(GENERAL_ERROR, '失敗', '', __LINE__, __FILE__, $sql);}
$res = $db->sql_fetchrow($result);

$nickname = $res['暱稱欄位']) ; //請依照自己需要修正,因為我並沒有安裝~~所以請確實填入欄位名稱\r

$quote_username = ( !empty($nickname) ) ? $nickname : $res['username'];
//附註:這東西我沒有實測過,請先備份檔案後修正,有錯誤也請一併提供
[/php]

這麼一來~~~引言時將會自動將暱稱填入~~~
這樣的方式也比較節省資源~~~

不然每次開文章都要一直查詢SQL~~~
HDD會夭折~~~
two
星球普通子民
星球普通子民
文章: 20
註冊時間: 2003-07-02 15:34
來自: 北極島上的冰塊

文章 two »

我有照你的方式做
但…怎麼找也找不到posting.php的檔案裡有$quote_username = ( !empty($post_info['post_username']) ) ? $post_info['post_username'] : $post_info['username'];
這一段語法?

找不到哩?
竹貓忠實會員
竹貓忠實會員
文章: 1058
註冊時間: 2003-05-15 00:30
來自: Game.Hack-遊戲駭客
聯繫:

文章 »

找這段= =||

$quote_username = ( trim($post_info['post_username']) != '' ) ? $post_info['post_username'] : $post_info['username'];
有事問問題,沒事答問題。
廣告不是這樣打滴!遊戲駭客
two
星球普通子民
星球普通子民
文章: 20
註冊時間: 2003-07-02 15:34
來自: 北極島上的冰塊

文章 two »

文 寫:找這段= =||

$quote_username = ( trim($post_info['post_username']) != '' ) ? $post_info['post_username'] : $post_info['username'];
謝謝!找是找到了

但改完了,還是一樣沒有變
依就是原來的username

沒關係,謝謝大家了! :-)

辛苦了! :oops:
主題已鎖定

回到「外掛問題討論」