第 1 頁 (共 1 頁)
[問題] 簡易子版面v1.3, 新增的子版面在後台看不到?
發表於 : 2006-08-19 23:55
由 lawrence0731
問題外掛:簡易子版面v1.3
參考連結:
http://phpbb-tw.net/phpbb/viewtopic.php ... 8%E9%9D%A2
使用版本:(例:phpBB 2.0.2)
網站位置:(例:
http://localhost)
狀況描述:
今天試著安裝這個mod, 裝完後各版面均正常, 唯有後台在主畫面中看不到自己新增的子版面... 怪?
試著在竹貓搜尋, 只有上面那個連結有提到相同的問題, 但心靈捕手幫他解決的方法好像不適用於我, 所以只好再發問一次, 如果有重覆發問還請原諒
現在我只好先讓子版面暫時可以 show 出來(參考上面連結的作法), 但這不是最終的方法, 因為版面一多會很亂..
我把 admin\admin_forums.php 及template\airhead\forum_admin_body.tpl 改過的程式, 還有參考的兩個畫面附上, 請各位大大幫忙囉!
http://nailspace.com.tw/forum/tmp/ModifiedSource.zip
補充:
曾裝過的外掛
-- top 5
-- 推薦網站
採用風格:
--AirHead
發表於 : 2006-08-21 17:02
由 lawrence0731
有人可以幫忙嗎? 如果我說明得不夠清楚請跟我說, 謝謝!
發表於 : 2006-08-21 17:12
由 wu2017
建議你順便張貼問題畫面 ^^
發表於 : 2006-08-21 20:48
由 lawrence0731
謝謝您的提醒!
就像上圖中, 紅線標出來的是我建立的子版面; 建立沒問題, 但回到"版面管理"->"管理選項"時, 卻看不到建立好的子版面; 圖中看得到是因為我先把 admin\admin_forums.php 中的一段修改處給還原回來:
MOD 中修改處
代碼: 選擇全部
#
#--------[ FIND ]----------------
#
if( $total_forums = $db->sql_numrows($q_forums) )
{
$forum_rows = $db->sql_fetchrowset($q_forums);
}
#
#-----[ REPLACE WITH 替換 ]-----------------------------------
#
while( $row = $db->sql_fetchrow($q_forums) )
{
if($row[forum_sub]>0)
{
$forum_sub2[$row['forum_sub']][]=$row;
}else
{
$forum_rows[] = $row;
}
}
$total_forums=count($forum_rows);
這段我把他還原, 才看得到版面... 只要我照mod 改, 子版面就不見了..

發表於 : 2006-08-21 23:43
由 心靈捕手
To lawrence0731:
我尚未檢查您的 admin\admin_forums.php
不過, 在您的 template\airhead\forum_admin_body.tpl 發現錯誤, 建議修改.
#
#-----[ FIND ]-----
#
代碼: 選擇全部
<!--
<tr>
<td class="row2">
<table width="100%">
<tr>
<td>
<script language="JavaScript">sub_line({catrow.forumrow.sub_forumrow.SUB_LINE});</script>
</td>
<td width="100%">
<span class="gen"><fieldset ><a href="{catrow.forumrow.sub_forumrow.U_VIEWFORUM}" target="_new">{catrow.forumrow.sub_forumrow.FORUM_NAME}</a></span><br /><span class="gensmall">{catrow.forumrow.sub_forumrow.FORUM_DESC}</fieldset></span>
</td>
</tr>
</table>
</td>
<td class="row1" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_TOPICS}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_POSTS}</span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_EDIT}">{L_EDIT}</a></span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_DELETE}">{L_DELETE}</a></span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_UP}">{L_MOVE_UP}</a> <br /> <a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_DOWN}">{L_MOVE_DOWN}</a>{catrow.forumrow.sub_forumrow.FORUM_SUB}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_RESYNC}">{L_RESYNC}</a></span></td>
</tr>
-->
#
#-----[ REPLACE WITH ]-----
#
代碼: 選擇全部
<tr>
<td class="row2">
<table width="100%">
<tr>
<td>
<script language="JavaScript">sub_line({catrow.forumrow.sub_forumrow.SUB_LINE});</script>
</td>
<td width="100%">
<span class="gen"><fieldset ><a href="{catrow.forumrow.sub_forumrow.U_VIEWFORUM}" target="_new">{catrow.forumrow.sub_forumrow.FORUM_NAME}</a></span><br /><span class="gensmall">{catrow.forumrow.sub_forumrow.FORUM_DESC}</fieldset></span>
</td>
</tr>
</table>
</td>
<td class="row1" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_TOPICS}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_POSTS}</span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_EDIT}">{L_EDIT}</a></span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_DELETE}">{L_DELETE}</a></span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_UP}">{L_MOVE_UP}</a> <br /> <a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_DOWN}">{L_MOVE_DOWN}</a>{catrow.forumrow.sub_forumrow.FORUM_SUB}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_RESYNC}">{L_RESYNC}</a></span></td>
</tr>
發表於 : 2006-08-22 01:16
由 lawrence0731
心靈捕手 寫:To lawrence0731:
我尚未檢查您的 admin\admin_forums.php
不過, 在您的 template\airhead\forum_admin_body.tpl 發現錯誤, 建議修改.
您指的是 <!-- 及 --> 備註的標記吧? 這段我最早是沒標的, 後來為了 debug 才把這段mark 起來, 現在即使拿掉還是一樣的.
事實上, 這段裡的 php 變數我有看過他的值,
程式在跑到這裡時是null(空值), 所以這才是奇怪的地方..
如:<script language="JavaScript">sub_line({catrow.forumrow.sub_forumrow.SUB_LINE});</script> 這行裡, 應該是要把SUB_LINE 這個變數丟到javascript 的 函數裡去執行, 但因為他是Null , 所以導致結果也是Null ==> 網頁上出不來.
看來原因應該是出在 admin_forums.php, 還請大大幫忙了, 謝謝!
發表於 : 2006-08-22 17:53
由 心靈捕手
lawrence0731 寫:心靈捕手 寫:To lawrence0731:
我尚未檢查您的 admin\admin_forums.php
不過, 在您的 template\airhead\forum_admin_body.tpl 發現錯誤, 建議修改.
您指的是 <!-- 及 --> 備註的標記吧? 這段我最早是沒標的, 後來為了 debug 才把這段mark 起來, 現在即使拿掉還是一樣的.
事實上, 這段裡的 php 變數我有看過他的值,
程式在跑到這裡時是null(空值), 所以這才是奇怪的地方..
如:<script language="JavaScript">sub_line({catrow.forumrow.sub_forumrow.SUB_LINE});</script> 這行裡, 應該是要把SUB_LINE 這個變數丟到javascript 的 函數裡去執行, 但因為他是Null , 所以導致結果也是Null ==> 網頁上出不來.
看來原因應該是出在 admin_forums.php, 還請大大幫忙了, 謝謝!
如果說發現了問題, 那麼應該是將您 (
按照外掛安裝說明修改後) 的檔案貼出, 比較妥當.
以下是關於 admin_forums.php 的修改, 提供您參考.
#
#-----[ FIND ]-----
#
代碼: 選擇全部
//子版面 start
function get_sub_list($id)
{
global $db;
$sql="select cat_id,cat_title from ".CATEGORIES_TABLE." order by cat_order ";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't get list of Categories/Forums", "", __LINE__, __FILE__, $sql);
}
#
#-----[ AFTER, ADD ]-----
#
代碼: 選擇全部
$cat_data = array();
#
#-----[ FIND ]-----
#
代碼: 選擇全部
if( $total_forums = $db->sql_numrows($q_forums) )
{
$forum_rows = $db->sql_fetchrowset($q_forums);
}
//while( $row = $db->sql_fetchrow($q_forums) )
//{
// if($row[forum_sub]>0)
// {
// $forum_sub2[$row['forum_sub']][]=$row;
// }else
// {
// $forum_rows[] = $row;
// }
//}
$total_forums=count($forum_rows);
#
#-----[ REPLACE WITH ]-----
#
代碼: 選擇全部
/*if( $total_forums = $db->sql_numrows($q_forums) )
{
$forum_rows = $db->sql_fetchrowset($q_forums);
}*/
while( $row = $db->sql_fetchrow($q_forums) )
{
if($row[forum_sub]>0)
{
$forum_sub2[$row['forum_sub']][]=$row;
}else
{
$forum_rows[] = $row;
}
}
$total_forums=count($forum_rows);
發表於 : 2006-08-22 21:16
由 lawrence0731
心靈捕手 寫:如果說發現了問題, 那麼應該是將您 (按照外掛安裝說明修改後) 的檔案貼出, 比較妥當.
了解; 以後會注意.
心靈捕手 寫:以下是關於 admin_forums.php 的修改, 提供您參考.
已經作了修改, 但問題仍然一樣...
還是我把機器開著, 請您連進來看? 不過我沒試過讓測試機外連就是了..不知道可不可行.
發表於 : 2006-08-22 21:28
由 心靈捕手
lawrence0731 寫:心靈捕手 寫:如果說發現了問題, 那麼應該是將您 (按照外掛安裝說明修改後) 的檔案貼出, 比較妥當.
了解; 以後會注意.
心靈捕手 寫:以下是關於 admin_forums.php 的修改, 提供您參考.
已經作了修改, 但問題仍然一樣...
還是我把機器開著, 請您連進來看? 不過我沒試過讓測試機外連就是了..不知道可不可行.
建議您:
1. 補充說明架站程式版本 (MySQL, PHP,...)
2. 貼出測試論壇網址
3. 方便的話, PM 給我帳號與密碼
發表於 : 2006-08-22 23:22
由 心靈捕手
根據我查看的結果, 目前問題應該是出在 template\airhead\admin\forum_admin_body.tpl
http://phpbb-tw.net/phpbb/viewtopic.php?p=244565#244565
請務必保留前後的註解標籤, 如下:
代碼: 選擇全部
<!-- BEGIN sub_forumrow -->
<tr>
<td class="row2">
<table width="100%">
<tr>
<td>
<script language="JavaScript">sub_line({catrow.forumrow.sub_forumrow.SUB_LINE});</script>
</td>
<td width="100%">
<span class="gen"><fieldset ><a href="{catrow.forumrow.sub_forumrow.U_VIEWFORUM}" target="_new">{catrow.forumrow.sub_forumrow.FORUM_NAME}</a></span><br /><span class="gensmall">{catrow.forumrow.sub_forumrow.FORUM_DESC}</fieldset></span>
</td>
</tr>
</table>
</td>
<td class="row1" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_TOPICS}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen">{catrow.forumrow.sub_forumrow.NUM_POSTS}</span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_EDIT}">{L_EDIT}</a></span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_DELETE}">{L_DELETE}</a></span></td>
<td class="row1" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_UP}">{L_MOVE_UP}</a> <br /> <a href="{catrow.forumrow.sub_forumrow.U_FORUM_MOVE_DOWN}">{L_MOVE_DOWN}</a>{catrow.forumrow.sub_forumrow.FORUM_SUB}</span></td>
<td class="row2" align="center" valign="middle"><span class="gen"><a href="{catrow.forumrow.sub_forumrow.U_FORUM_RESYNC}">{L_RESYNC}</a></span></td>
</tr>
<!-- END sub_forumrow -->
發表於 : 2006-08-23 00:03
由 lawrence0731
您好, 真的是註解的問題!!
請問, "<!--" 及 "-->" 在HTML 裡我記得是純註解而已, 並沒有其他的功能, 難道我搞錯了? 或者php 在解析.tpl時會拿來作特別的用途??
發表於 : 2006-08-23 23:33
由 心靈捕手
lawrence0731 寫:
您好, 真的是註解的問題!!
請問, "<!--" 及 "-->" 在HTML 裡我記得是純註解而已, 並沒有其他的功能, 難道我搞錯了? 或者php 在解析.tpl時會拿來作特別的用途??
抱歉! 怪我沒能在最早時, 提出此修正.
最初, 在檢視您的 forum_admin_body.tpl 時,
因為看見您用 "<!--" 及 "-->" 以及提問 '後台在主畫面中看不到自己新增的子版面',
所以直接發文提醒您, 移除該註解標籤.
但是, 移除它們是不對的;
這也是後來, 我進到您論壇的控制台去查看才發現的.
因為類似
代碼: 選擇全部
<!-- BEGIN switch_user_logged_out -->
<!-- END switch_user_logged_out -->
的註解, 都是有特殊功能 (寫在 *.php 中) 的, 所以必須保留 (寫在 *.tpl 中).
發表於 : 2006-08-24 00:25
由 lawrence0731
原來如此.. php 在parse .tpl 時居然會去用到註解? 這我在ASP 網頁中倒是真的沒看過...
話說回來, 捕手大大果然debug 經驗老到... 感謝囉!
