發現一個2.0.18 在 posting.php 的 bug

phpBB Installation & Usage Support
phpBB 2 安裝於各類型作業平台之問題討論;外掛問題,請到相關版面依發問格式發表!
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
主題已鎖定
bluejeff
星球普通子民
星球普通子民
文章: 16
註冊時間: 2004-11-17 12:49

發現一個2.0.18 在 posting.php 的 bug

文章 bluejeff »

不清楚有沒有人和我一樣狀況, 剛剛去phpbb看了一下, 好像沒有人回報這個問題.

裝完2.0.18之後, 發現無法建立投票\r
正確的說應該是無法把已經打好的投票給keep在同一個page

經過測試之後, 發現2.0.18的更新說明是錯誤的. 在posting.php, 原本的2.0.18是:

Find:

代碼: 選擇全部

$refresh = $preview || 
After, Add:

代碼: 選擇全部

$orig_word = $replacement_word = array();
這個是錯誤的, 原本的那一句的refresh功能就會被切掉了.

我想應該是:
Find:

代碼: 選擇全部

$refresh = $preview || $poll_add || $poll_edit || $poll_delete;
After, Add:

代碼: 選擇全部

$orig_word = $replacement_word = array();
這樣子就解決問題了 :)
希望我修的是正確的.
最後由 bluejeff 於 2005-12-21 13:37 編輯,總共編輯了 1 次。
小竹子
竹貓星球大統領
竹貓星球大統領
文章: 4596
註冊時間: 2001-10-29 22:13
來自: 竹貓星球
聯繫:

文章 小竹子 »

http://phpbb-tw.net/phpbb/viewtopic.php?t=40996

經過測試好像沒問題耶! :oops:
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
bluejeff
星球普通子民
星球普通子民
文章: 16
註冊時間: 2004-11-17 12:49

文章 bluejeff »

因為原來的程式碼是:

代碼: 選擇全部

$refresh = $preview || $poll_add || $poll_edit || $poll_delete;
如果依照原本的方法修改的話會變成:

代碼: 選擇全部

$refresh = $preview || $orig_word = $replacement_word = array();
$poll_add || $poll_edit || $poll_delete;
那樣子的話refresh就會被切斷, 當進行投票的時候會變成無法增加選項(因為無法更新)

基本上是2.0.18的小錯誤, 只要注意一下就OK. 小竹子大概是下意識的修對了 :) 只要是常碰程式的人都應該可以避免這個小bug. :)

依照上面我講的修法修改的話應該是會變成:

代碼: 選擇全部

$refresh = $preview || $poll_add || $poll_edit || $poll_delete;
$orig_word = $replacement_word = array();
也就是說, 要增加那句的那句應該是在原本句的之後, 而不是在中間把原本句給切了
小竹子
竹貓星球大統領
竹貓星球大統領
文章: 4596
註冊時間: 2001-10-29 22:13
來自: 竹貓星球
聯繫:

文章 小竹子 »

竹貓因為沒安裝外掛,通常更新都是直接覆蓋檔案進行升級,所以比較沒有修改上的問題 :oops:
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
bluejeff
星球普通子民
星球普通子民
文章: 16
註冊時間: 2004-11-17 12:49

文章 bluejeff »

阿, 真好, 那樣子就不會錯了.
有裝外掛就只能一句一句慢慢改的說, 唉~ :(

這個小bug小竹子可以去回報給phpbb.com的管理者嗎?
小竹子
竹貓星球大統領
竹貓星球大統領
文章: 4596
註冊時間: 2001-10-29 22:13
來自: 竹貓星球
聯繫:

文章 小竹子 »

我先檢查一下,因為當時 2.0.18 有釋出過兩次,不知道是不是之前有修正過!
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
動機不明
喝咖啡的綠皮猴
喝咖啡的綠皮猴
文章: 1179
註冊時間: 2002-03-06 20:37
來自: GOP (重啟)

文章 動機不明 »

這個其實算是作者蠻偷懶的寫法...
可能是怕有些人安裝過其他外掛所以該行會有變更,因此才用開頭一段來代表...

前幾天我安裝生日外掛的時候也發現一樣的寫法,沒有一點修改經驗的人看了一定會狀況連連的 ^^"

例如

代碼: 選擇全部

#
#-----[ FIND ]------------------------------------------------
#
'OCCUPATION' =>
'INTERESTS' =>

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start add - Birthday MOD
		'S_BIRTHDAY' => $s_birthday,
		'BIRTHDAY_REQUIRED' => ($board_config['birthday_required']) ? '*' : '',
// End add - Birthday MOD

#
#-----[ FIND ]------------------------------------------------
#
'L_INTERESTS' =>

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start add - Birthday MOD
		'L_BIRTHDAY' => $lang['Birthday'],
// End add - Birthday MOD
非官方外掛問題區公告: [必看]請配合發問格式及明確主題發問(2006 02/24更新)
七點要求:
1. 發問前先搜尋,確定沒有重複後再發表
2. 主題要明確
3. 依照發問格式
4. 禁連續推文
5. 請盡量減少使用地方性語言
6. 解決問題後請修改第一篇主題,並感謝曾經幫過你的前輩們 ^^
7. 請不要將檔案內容完整貼出喔! 只要提供問題行及上下各五行就可以了
Mac
百戰天龍馬蓋先
百戰天龍馬蓋先
文章: 2590
註冊時間: 2003-02-02 02:28
來自: MacphpBBMOD
聯繫:

文章 Mac »

bluejeff 寫:因為原來的程式碼是:

代碼: 選擇全部

$refresh = $preview || $poll_add || $poll_edit || $poll_delete;
如果依照原本的方法修改的話會變成:

代碼: 選擇全部

$refresh = $preview || $orig_word = $replacement_word = array();
$poll_add || $poll_edit || $poll_delete;
那樣子的話refresh就會被切斷, 當進行投票的時候會變成無法增加選項(因為無法更新)

基本上是2.0.18的小錯誤, 只要注意一下就OK. 小竹子大概是下意識的修對了 :) 只要是常碰程式的人都應該可以避免這個小bug. :)

依照上面我講的修法修改的話應該是會變成:

代碼: 選擇全部

$refresh = $preview || $poll_add || $poll_edit || $poll_delete;
$orig_word = $replacement_word = array();
也就是說, 要增加那句的那句應該是在原本句的之後, 而不是在中間把原本句給切了
你誤會了 AFTER, ADD 的意思了。AFTER, ADD 和 IN-LINE AFTER, ADD 是不一樣的指令\r

~Mac
+ 關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。

phpBB 官網 | 竹貓星球 | MacphpBBMOD | 我的服務
過山雲
竹貓忠實會員
竹貓忠實會員
文章: 390
註冊時間: 2002-09-05 20:11
來自: 東都.承天府.萬年縣治.拱辰門北
聯繫:

文章 過山雲 »

請問
那這樣到底有沒有問題呢?
謝謝。
圖檔
Mac
百戰天龍馬蓋先
百戰天龍馬蓋先
文章: 2590
註冊時間: 2003-02-02 02:28
來自: MacphpBBMOD
聯繫:

文章 Mac »

過山雲 寫:請問
那這樣到底有沒有問題呢?
謝謝。
關於外掛指令的寫法,目前官方的外掛小組是較為建議使用所謂的 Partial Match(部分比對),因為這樣子寫,在碰到已因為安裝外掛而修改的程式碼時,比較能有較少的衝突。

以原先提出來的程式碼為例,不管 "$refresh = $preview ||" 之後做了何種修正,都可以在找到那一行之後(AFTER, ADD = 之下)加上新的修正。

~Mac
+ 關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。

phpBB 官網 | 竹貓星球 | MacphpBBMOD | 我的服務
DL
竹貓忠實會員
竹貓忠實會員
文章: 717
註冊時間: 2005-03-05 15:29

文章 DL »

要是你用asymod來裝的話,你會發覺安裝生日外掛及2.0.18的更新都沒有問題。
主題已鎖定

回到「phpBB 2 安裝與使用」