[整理]偽子分區功能介紹 !

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

版主: 版主管理群

t54185
星球公民
星球公民
文章: 72
註冊時間: 2006-08-24 12:48

文章 t54185 »

這篇幫助很大 容我做個標籤
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

偽子分區 V2.0.1可以套用在phpBB2 2.0.22上!

謝謝倉木老師 :-P
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

回報一個錯誤,看看有誰幫忙!

主機為獨立服務器,phpBB2 V2.0.22,Big-5碼,PHP Version 4.4,MY SQL Version 4.1,OS: Linux Version Centos
安裝MOD:Split topic type (公告置頂分區 v2.0.1) , Topic display order V1.0.2,Quick Reply (快速回覆 2.0.4),偽子分區 V2.0.1

題示:我是由phpBB2 V2.0.5升級到v2.0.22!現在要做的正是把必要的MOD逐一安裝!


問題是這樣的,以上的MOD是按次序正確安裝及顯示運作正常,但今天我想把A區的abc版面移到B區,在控制臺內的版面管理>管理選項 我正要移動的時候按確定時卻出現如下錯誤信息:
Couldn't update forum information

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '/-- fin mod : topic display order ----------------------------------------------' at line 3

UPDATE phpbb_forums SET forum_name = 'abc', cat_id = 17, forum_desc = '', forum_status = 0, forum_display_order = 0, forum_display_sort = 0, prune_enable = 0 //-- fin mod : topic display order ----------------------------------------------------------------- WHERE forum_id = 126

Line : 473
File : admin_forums.php
後來查閱自己的筆記才發現在安裝 偽子分區 V2.0.1時有一個奇怪現像,就是執行db_update.php數據庫更新時不論在I.E.6或Firefox卻好像沒有反應,Brower內的空白一片,但沒有任何錯誤信息,在後臺可以在偽子分區控制面版加進我需要隱藏的版面,前台亦可正確出現我想要的效果!所以便不加理會這個曾出現的狀況!但今早要移動版面卻出現以上的問題!!

由於在phpBB2 v2.0.5時倉木老師曾協助小弟成功安裝 偽子分區-v1.0.2於論壇內,一直源用至升級前!由於數據庫在這時曾改動過,所以在phpbb_forums早巳有is_hideforum這一欄!我想問題就是出在這裡!

以下便是錯誤信息所說到的admin_forums.php

=====
http://phpbb-tw.net/phpbb/viewtopic.php?p=228591#228591
請儘量不要整個貼出來, 謝謝合作
=====


Best rgds,
China2000
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8532
註冊時間: 2004-04-30 01:54
來自: Taiwan

文章 心靈捕手 »

china2000 寫:
Couldn't update forum information

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '/-- fin mod : topic display order ----------------------------------------------' at line 3

UPDATE phpbb_forums SET forum_name = 'abc', cat_id = 17, forum_desc = '', forum_status = 0, forum_display_order = 0, forum_display_sort = 0, prune_enable = 0 //-- fin mod : topic display order ----------------------------------------------------------------- WHERE forum_id = 126

Line : 473
File : admin_forums.php
這個錯誤訊息未必與 '偽子分區' 有關.

建議您:
1. 若升級時, 未刪除原外掛所新增的資料表或欄位,
則重新安裝時, 不必再重複執行一次.
2. 以下的修改, 提供您參考:
#
#-----[ FIND ]-----
#

代碼: 選擇全部

		case 'modforum':
			// Modify a forum in the DB
			if( isset($HTTP_POST_VARS['prune_enable']))
			{
				if( $HTTP_POST_VARS['prune_enable'] != 1 )
				{
					$HTTP_POST_VARS['prune_enable'] = 0;
				}
			}

//-- mod : topic display order ---------------------------------------------------------------------
// here we have added :
//		, forum_display_order = " . intval($HTTP_POST_VARS['forum_display_order']) . ", forum_display_sort = " . intval($HTTP_POST_VARS['forum_display_sort']) . "
//-- modify
			$sql = "UPDATE " . FORUMS_TABLE . "
				SET forum_name = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", forum_desc = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', forum_status = " . intval($HTTP_POST_VARS['forumstatus']) . ", forum_display_order = " . intval($HTTP_POST_VARS['forum_display_order']) . ", forum_display_sort = " . intval($HTTP_POST_VARS['forum_display_sort']) . ", prune_enable = " . intval($HTTP_POST_VARS['prune_enable']) . "
//-- fin mod : topic display order -----------------------------------------------------------------
				WHERE forum_id = " . intval($HTTP_POST_VARS[POST_FORUM_URL]);
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

		case 'modforum':
			// Modify a forum in the DB
			if( isset($HTTP_POST_VARS['prune_enable']))
			{
				if( $HTTP_POST_VARS['prune_enable'] != 1 )
				{
					$HTTP_POST_VARS['prune_enable'] = 0;
				}
			}

			$sql = "UPDATE " . FORUMS_TABLE . "
				SET forum_name = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", forum_desc = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', forum_status = " . intval($HTTP_POST_VARS['forumstatus']) . ", forum_display_order = " . intval($HTTP_POST_VARS['forum_display_order']) . ", forum_display_sort = " . intval($HTTP_POST_VARS['forum_display_sort']) . ", prune_enable = " . intval($HTTP_POST_VARS['prune_enable']) . "
				WHERE forum_id = " . intval($HTTP_POST_VARS[POST_FORUM_URL]);
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

心靈捕手老師:

依照老師的指示後巳可以把A區的abc版面移到B區內 :) 謝謝老師幫忙!

但問題出處是否就是那些修改描述?

Best rgds,
China2000
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8532
註冊時間: 2004-04-30 01:54
來自: Taiwan

文章 心靈捕手 »

china2000 寫:心靈捕手老師:

依照老師的指示後巳可以把A區的abc版面移到B區內 :) 謝謝老師幫忙!

但問題出處是否就是那些修改描述?

Best rgds,
China2000
問題是出在 '註解 (紅字部分)' 造成原來整句的語法錯誤.
SET forum_name = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumname']) . "', cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]) . ", forum_desc = '" . str_replace("\'", "''", $HTTP_POST_VARS['forumdesc']) . "', forum_status = " . intval($HTTP_POST_VARS['forumstatus']) . ", forum_display_order = " . intval($HTTP_POST_VARS['forum_display_order']) . ", forum_display_sort = " . intval($HTTP_POST_VARS['forum_display_sort']) . ", prune_enable = " . intval($HTTP_POST_VARS['prune_enable']) . "
//-- fin mod : topic display order -----------------------------------------------------------------
WHERE forum_id = " . intval($HTTP_POST_VARS[POST_FORUM_URL]);
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

明白了!謝謝 :)

現正忙於修改版面中 :oops:
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

喔~ 昨晚發現另一個狀況!詳情如下:

提示:論壇有A、B和共三區,A、B和C區和各版面在版本升級前(2.0.5 > 2.0.22)巳存在,A、B區巳各有一個偽子分區,能顯示新文章提示和用戶名和發文時間等功能一切如常!現想在A區利用現有的版面多建一個偽子分區!第三個偽子分區內裡的設定和第一和第二偽子分區模式一樣!只是版面不同!

問題是這樣的,就是昨晚依照心靈捕手老師的方法去修改admin_forums.php 後巳能搬移版面到所屬的區裡,昨晚如常在偽子分區的控升台內加入第三個偽子分區,設定完畢後回到論壇主版巳能看見第三個偽子分區在A區內,顯示效果和位置正常,但細看下發現新加的第三個偽子分區內的子版面字體和原先巳存在的兩個偽子分區版面稍有不同!新的沒有舊的那麼"深色"或粗!看來好像瘦小了一點!後來因太晚要睡覺才沒有理會Zzzzzz..

今早入論壇時卻發現一個奇怪現像!就是今早有人在三個偽子分區的版內都有發文,第一和第二偽子分區能正常顯示提示有新文章和新文章在那一個版面,最後發文者和發文時間亦正常顯示!但昨晚新加入的第三個偽子分區卻只能顯示有新文章和最後發文者及發文時間!卻不能顯示新文章在那一個版面內!

心靈捕手老師或倉木老師能否可以再幫幫忙呢?是不是二維的問題?

Best rgds,
China2000

主機為獨立服務器,phpBB2 V2.0.22,Big-5碼,PHP Version 4.4,MY SQL Version 4.1,OS: Linux Version Centos
安裝MOD:Split topic type (公告置頂分區 v2.0.1) , Topic display order V1.0.2,Quick Reply (快速回覆 2.0.4),偽子分區 V2.0.1
china2000
星球公民
星球公民
文章: 194
註冊時間: 2003-10-24 23:00
來自: 傷講

文章 china2000 »

花了個通宵和大半天才把問題搞定!原來是html的問題!

原來錯誤的html描述為:
<table width="100%" cellpaddinng="1">
<tr><td><img
src="http://abc.com/phpBB2/images/line.gif"
width="100%" height="2"></td></tr></table>
<font size="2"><a
href="http://abc.com/phpBB2/viewforum.php?f=55"class="f
orumlink">Hong Kong Police</a> , <a
href="http://abc.com/phpBB2/viewforum.php?f=81"class="f
orumlink">Hong Kong Airport</a></font>

當改回以下便可以顯示那一版有新文章了!

<table width="100%" cellpaddinng="1">
<tr><td><img
src="http://abc.com/phpBB2/images/line.gif"
width="100%" height="2"></td></tr></table>
<font size="2"><a
href="http://abc.com/phpBB2/viewforum.php?f=55"class="f
orumlink">Hong Kong Police</a> , <a
href="http://abc.com/phpBB2/viewforum.php?f=81"class="f
orumlink">Hong Kong Airport</a></font>

謝謝心靈捕手老師和倉木老師 ')
moneydollar
星球普通子民
星球普通子民
文章: 10
註冊時間: 2005-07-10 01:56

文章 moneydollar »

(看了一連串的討論下來)

UTF-8的版本真的不能使用嗎?

(一個是2.0.21UTF-8版,裝了確無法隱藏子版面的人)

(PS。所有的檢查工作確定都正確,後端的phpmyadmin也確定無誤)
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

moneydollar 寫:(看了一連串的討論下來)

UTF-8的版本真的不能使用嗎?

(一個是2.0.21UTF-8版,裝了確無法隱藏子版面的人)

(PS。所有的檢查工作確定都正確,後端的phpmyadmin也確定無誤)
demo站
測試了一下, UTF-8 版可以使用
測試環境:
  • phpBB 2.0.22 UTF-8 version
  • PHP 5.1.6
  • MySQL v5.0.32-Debian_7
  • Apache/2.2.3 (Unix)
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
moneydollar
星球普通子民
星球普通子民
文章: 10
註冊時間: 2005-07-10 01:56

文章 moneydollar »

phpbb版本:2.0.21
phpMyAdmin 2.6.2-rc1
MySQL 版本 4.0.24-standard
fake_forums_v201(全新安裝,未裝過其他子分區外掛)




執行:按照偽子分區-v2.0.1.txt進行修改

後台:

phpbb_forums 資料表裡。要被隱的版面test, 其is_hideforum值為1
圖檔



phpbb_forums_control的內容如下
圖檔

control_id 為4--沒錯,以我站的區塊來說,此版是位於第4區
show_forums 為14--沒錯,要顯示有隱藏版的版面
hide_forums 為16--沒錯,就是我新建來要藏起來的版面


如此以上的檢查看起來就沒啥問題

可是結果-------http://assiduo.chu.jp/phpbb/ ←請移架敝站

其第4區的test,應要隱藏於"小路公主殿下"這一版面

可他還是大刺刺的顯示在版面上呢


請大大們請教了
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

moneydollar 寫:其第4區的test,應要隱藏於"小路公主殿下"這一版面

可他還是大刺刺的顯示在版面上呢


請大大們請教了
先附上index.php來看看吧
請將它打包成壓縮檔後提供下載連結
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
moneydollar
星球普通子民
星球普通子民
文章: 10
註冊時間: 2005-07-10 01:56

文章 moneydollar »

謝謝,麻煩了!

http://assiduo.chu.jp/index.rar

一併告知,除了完全新安裝的偽子分區外
在安裝之前有安裝過其他外掛

明細如下:

advanced_links_mod_1.2.2 (已完成安裝,只是首頁還沒有讓他顯示出來)
Change_User_Nick_Name_2.0.2
夢幻公告欄
快速回覆主題 for phpBB2.0.0

不曉得是否風格也有影響?
我使用的是神川小羽大的pbstyle2
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

moneydollar 寫:謝謝,麻煩了!
有二個地方有問題

#
#--------[ OPEN ]----------------
#
index.php

#
#--------[ FIND ]----------------
#

代碼: 選擇全部

						if ( $is_auth_ary[$forum_id]['auth_view'] && !$forum_data[$j]['is_hideforum'])
#
#--------[ AFTER, ADD ]----------------
#

代碼: 選擇全部

						{
#
#--------[ FIND ]----------------
#

代碼: 選擇全部

// if ... total_categories
#
#--------[ IN-LINE, FIND ]----------------
#

代碼: 選擇全部

//
#
#--------[ IN-LINE BEFORE, ADD ]----------------
#

代碼: 選擇全部

}
#
#--------[ SAVE/CLOSE FILE ]----------------
#
# EoM

在改的時候

代碼: 選擇全部

if ( $is_auth_ary[$forum_id]['auth_view'] && !$forum_data[$j]['is_hideforum'])
這句底下原本就有的「{」不見了
而在「// if ... total_categories」之前就有的「}」也不見了
造成判斷上的錯誤才隱藏不了
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
主題已鎖定

回到「外掛問題討論」