选择DST!支持DST!

查看完整版本: 将分类信息的内容到 forumdisplay 中的问题...

img 2007-12-2 11:29

将分类信息的内容到 forumdisplay 中的问题...

各位先进大家好...我是php菜鸟...在将帖子分类信息内容放到 forumdisplay 的时候遇到了困难, 希望得到您的指点!非常感谢...I[};I)`5S
!t:QI#@!sG7Y#ZV
我是这样做的, 将viewthread.php的分类信息部分放到forumdisplay.php然后再 forumdisplay.htm 调用..做法如下:
;FH._.hrQ ?"@ X4i:h/O-kG#N
在forumdisplay.php中找到:[code]while(($querysticky && $thread = $db->fetch_array($querysticky)) || ($query && $thread = $db->fetch_array($query)) || ($queryfloat && $thread = $db->fetch_array($queryfloat))) {
"^ly,hG9_         $thread['icon'] = isset($_DCACHE['icons'][$thread['iconid']]) ? '<img src="images/icons/'.$_DCACHE['icons'][$thread['iconid']].'" alt="Icon'.$thread['iconid'].'" class="icon" />' : '&nbsp;';
q9x+[1j9jL2D4^         $thread['lastposterenc'] = rawurlencode($thread['lastposter']);[/code]后面加上:[code]//主题列表页面显示分类信息开始f)Q'U*hT-N5D6h^
                if(@include_once DISCUZ_ROOT.'./forumdata/cache/threadtype_'.$thread['typeid'].'.php') {B*c Pc*la^SE
                        $query = $db->query("SELECT optionid, value FROM {$tablepre}typeoptionvars WHERE tid='$thread[tid]'");
qsQ8o9W` |g!h                         while($option = $db->fetch_array($query)) {
.~,r MY]!W1d Q                                 $optiondata[$option['optionid']] = $option['value'];7Z7Ms&Pr.@?'W7b
                        }
:i}2F#\aq u -k E(}8lhpCl
                        foreach($_DTYPE as $optionid => $option) {
[0q0n0G ~6]5|o                                 $optionlist[$option['identifier']]['title'] = $_DTYPE[$optionid]['title'];
N5a^2v!L\$na~?                                 if($_DTYPE[$optionid]['type'] == 'checkbox') {
6eT\bM'l                                         $optionlist[$option['identifier']]['value'] = '';Ps3{Iq*m h
                                        foreach(explode("\t", $optiondata[$optionid]) as $choiceid) {
IK!_ Y*r)gW9QC                                                 $optionlist[$option['identifier']]['value'] .= $_DTYPE[$optionid]['choices'][$choiceid].'&nbsp;';XG%xA-E*mX'vQ?
                                        }
ZE6Q`E                                 } elseif(in_array($_DTYPE[$optionid]['type'], array('radio', 'select'))) {
'PZ6M Wa3C;I S                                         $optionlist[$option['identifier']]['value'] = $_DTYPE[$optionid]['choices'][$optiondata[$optionid]]; rUyU$z;_
                                } elseif($_DTYPE[$optionid]['type'] == 'image') {0[ kY A6C*u#A dh
                                        $maxwidth = $_DTYPE[$optionid]['maxwidth'] ? 'width="'.$_DTYPE[$optionid]['maxwidth'].'"' : '';
? ^OzfjL                                         $maxheight = $_DTYPE[$optionid]['maxheight'] ? 'height="'.$_DTYPE[$optionid]['maxheight'].'"' : '';
N_!q _nAZ ?K                                         $optionlist[$option['identifier']]['value'] = $optiondata[$optionid] ? "<a href=\"$optiondata[$optionid]\" target=\"_blank\"><img src=\"$optiondata[$optionid]\"  $maxwidth $maxheight border=\"0\"></a>" : '';sTauc lMu+tw
                                } elseif($_DTYPE[$optionid]['type'] == 'url') {}iq6JL3Ur$lx4^
                                        $optionlist[$option['identifier']]['value'] = $optiondata[$optionid] ? "<a href=\"$optiondata[$optionid]\" target=\"_blank\">$optiondata[$optionid]</a>" : '';?-B_+n"`
                                } else {6~J1\y&s tsl,lpo
                                        $optionlist[$option['identifier']]['value'] = $optiondata[$optionid];H#T3]4^'^
                                }_ c xx:QJ)_
                        }
.qE5Ch2iQ3m#hm$J p-xQ;N X/DQdl8RD{
                        $typetemplate = $_DTYPETEMPLATE ? preg_replace(array("/\[(.+?)value\]/ies", "/{(.+?)}/ies"), array("showoption('\\1', 'value')", "showoption('\\1', 'title')"), $_DTYPETEMPLATE) : '';I8N"{-zQ7EJ5}y;J;L
                }*D O6@;r{0L
//主题列表页面显示分类信息开始[/code]然后在forumdisplay.htm中找到:[code]                                        <!--{if $thread['new']}-->
8}*In L i8|                                                 <a href="redirect.php?tid=$thread[tid]&amp;goto=newpost$highlight#newpost" class="new">New</a>
sE-`"mX                                         <!--{/if}-->[/code]后面加上:[code]                                                        <div class="box typeoption"> pZ J6ljG H
                                                                <h4>{lang threadtype_option} - $forum[threadtypes][types][$thread[typeid]]</h4>
4?Aw5D T/P Z;|                                                                 <table summary="{lang threadtype_option}" cellpadding="0" cellspacing="0">S(s2fDp*xv,MA5A
                                                                <!--{loop $optionlist $option}-->
2AY7\fQq+O3m6^g                                                                         <tr>1Ct(AfYg i2c
                                                                                <th>$option[title]</th>6\\WHH J|3LS
                                                                                <td><!--{if $option['value']}-->$option[value]<!--{else}-->-<!--{/if}--></td>
lr7t:r*N&Y.f+BKW                                                                         </tr>8Vv*J[lw,L1t6C
                                                                <!--{/loop}--> k N] kA4@Q;o2h9P3]
                                                                </table>
9xn,d"K(~I[:g                                                         </div>[/code]这样做只能显示出来[b][color=DarkRed]一个帖子[/color][/b]的分类信息 :(
6c8@TRi Vnht-k wC
我的能力实在搞不明白那么的循环嵌套....我尝试过根据自己的理解加上$thread['typeid'], 但总是不成功,已经两天多了,快崩溃了...因此来到高手云集的17dst希望能得到大家的指点..非常感谢阿!!!!

bg6aer 2008-8-21 16:40

感兴趣  我也在研究 改进分类信息模型
页: [1]
查看完整版本: 将分类信息的内容到 forumdisplay 中的问题...