[教學] 解決 phpBB 主題過長無法瀏覽 (或增加主題長度) 的方法

phpBB-TW Knowledge Base
收集網友們在竹貓所發表的教學主題或文章,以利分享!
(僅供瀏覽,由版主群維護)
回覆文章
Mowd
竹貓忠實會員
竹貓忠實會員
文章: 326
註冊時間: 2002-06-26 01:17
來自: 台北
聯繫:

[教學] 解決 phpBB 主題過長無法瀏覽 (或增加主題長度) 的方法

文章 Mowd »

phpbb資料庫存主題的長度是char(60),但是posting_body.tpl是maxlength=60,乍看之下好像沒錯,但是char(60)是指60 byte,但是maxlength卻是60個字,如果是中文的話,全打滿就是120 byte了,所以會讀不到而產生空白畫面。
解決辦法:
打開posting_body.tpl
找maxlength="60"
改成
maxlength="30"
這樣就OK了。
最後由 Mowd 於 2003-11-20 22:58 編輯,總共編輯了 1 次。
澳門男孩
竹貓好朋友
竹貓好朋友
文章: 102
註冊時間: 2002-06-08 00:40
來自: 澳門

文章 澳門男孩 »

謝謝提供
轉去教學文件庫
小竹子
竹貓星球大統領
竹貓星球大統領
文章: 4596
註冊時間: 2001-10-29 22:13
來自: 竹貓星球
聯繫:

文章 小竹子 »

這算是 BUG?應該是長度修正吧!
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
Mowd
竹貓忠實會員
竹貓忠實會員
文章: 326
註冊時間: 2002-06-26 01:17
來自: 台北
聯繫:

文章 Mowd »

因為這個方法是預防,如果已經有這樣的主題要到資料庫找到該篇主題,再把他改短一點。
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

Re: [解決]phpBB 主題過長無法瀏覽

文章 心靈捕手 »

Mowd 寫:phpbb資料庫存主題的長度是char(60),但是posting_body.tpl是maxlength=60,乍看之下好像沒錯,但是char(60)是指60 byte,但是maxlength卻是60個字,如果是中文的話,全打滿就是120 byte了,所以會讀不到而產生空白畫面。
解決辦法:
打開posting_body.tpl
找maxlength="60"
改成
maxlength="30"
這樣就OK了。
若是論壇語系是 utf-8 (繁中) 的話,
則打滿 30 中文字, 可能不止 60 字元.
因為每個 utf-8 碼中文字, 約有 1~4 個字元.

所以, 若是論壇語系是 utf-8 (繁中) 的話,
則設定 maxlength="20" 為宜.

或者, 安裝外掛 Long Subject (120 letters)
http://phpbb-tw.net/phpbb/viewtopic.php?p=122336#122336
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

增加主題長度的方法

文章 心靈捕手 »

phpbb 2 若要增加主題長度,
則可參考上述外掛: Long Subject (120 letters)
加大樣板檔 (posting_body.tpl) 的 '字數' 限制 (60 -> 120), 以及更改資料表相關欄位的 '長度' 值
phpbb_topics > topic_title > 60 -> 120
phpbb_posts_text > post_subject > 60 -> 120

若是輸入英文字, 則沒有問題;
但是, 若輸入中文, 會有問題.
主要是 big5 碼中文, 一個字為 2 字元;
而 utf-8 碼中文, 一個字為 1~4 字元.
因此, 樣板檔的字數限制, 必須斟酌調整 (減小).


同理, phpbb3 若要增加主題長度, 則可這麼做:
加大樣板檔的 '字數' 限制 (60 -> 120; 64 -> 124), 以及更改資料表相關欄位的 '長度' 值
使用預設的風格不同, 要修改的檔案也不同; 新主題預設字數限制為 60, 回覆則為 64.
prosilver (posting_editor.html)
subsilver2 (posting_body.html)
phpbb_topics > topic_title > 100 -> 124
phpbb_posts > post_subject > 100 -> 124

若是輸入英文字, 則沒有問題;
但是, 若輸入中文, 會有問題.
主要是 utf-8 碼中文, 一個字為 1~4 字元.
因此, 樣板檔的字數限制, 必須斟酌調整 (減小); 或者是加大資料表相關欄位的 '長度' 值

以下為加大資料表相關欄位的 '長度' 值為 124 的參考語法.
#
#-----[ SQL ]-----
#

代碼: 選擇全部

ALTER TABLE `phpbb_topics` CHANGE `topic_title` `topic_title` VARCHAR(124) NOT NULL;
ALTER TABLE `phpbb_posts` CHANGE `post_subject` `post_subject` VARCHAR(124) NOT NULL;
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
回覆文章

回到「教學文件庫」