账号通
    

账号  

密码  

3008

查看

8

回复
主题:[求助]建立文章多栏目遇到的难题 [收藏主题] 转到:  
lawfan 当前离线

9

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:20 分
登录次数:10 次
注册时间:2011/8/7
最后登录:2012/6/18
lawfan 发表于:2011/8/16 22:44:50   | 只看该作者 查看该作者主题 楼主 
科汛在线商城系统(NET)

    由于单位网站需要实现文章多栏目的功能,我在KS_Article表中增加了KS_Tis2字段,把它设置为Text,并在字段介绍中加入如下代码,实现了文章第二栏目的输入功能:

<script>

document.write("<select name='tid2' id='tid2' onchange='myform.KS_Tid2.value=myform.tid2.value'></select>");

myform.KS_Tid2.style.display='none';

for(i=0;i<myform.tid.options.length;i++){

var oo=document.createElement('option');

      oo.text=myform.tid.options.text;

     oo.value=myform.tid.options.value;

      myform.tid2.add(oo);

      if(oo.value==myform.KS_Tid2.value){

      myform.tid2.options.selected=true;

      }

}

</script>

    但是在调用多栏目文章时,我遇到了困难。以下是我自定义的SQL标签,但系统提示空白的错误:

    Select top 6 ID,title, Case When Tid in (select id from KS_Class where ts like '%{$Param(0)}%') Then Tid Else KS_Tid2 as Tid End from KS_Article where Tid in (select id from KS_Class where ts like '%{$Param(0)}%') or KS_Tid2 in (select id from KS_Class where ts like '%{$Param(0)}%') order by id desc

    以上代码去除Case部分能够正确设置,说明Case部分有问题,但不知道怎样表述才是正确的。加入这句的目的,是希望识别是哪个栏目在调用文章,如果是第二栏目,则把KS_tid2字段的值作为tid的值,这样可以在Loop中调用文章的归属栏目名称,并为另外自定义位置导航提供参数(因为位置导航只能以Tid的值判断归属栏目,在多栏目文章中,需要另外提供归属栏目参数,来设置正确的当前归属栏目,否则在第二归属栏目调用文章时,显示的位置是第一归属栏目的位置。在Loop中情况也是一样)。

   还望各位高手多多指教。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lawfan 当前离线

9

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:20 分
登录次数:10 次
注册时间:2011/8/7
最后登录:2012/6/18
lawfan 发表于:2011/8/16 23:21:43   | 只看该作者 查看该作者主题 沙发 
科汛在线网校系统

我实现文章多栏目发布的思路是:

1.在KS_Article表中增加一个第二栏目字段KS_Tid2,通过字段介绍中的js功能实现第二栏目的发布。

2.自定义SQL标签,包括文章列表、位置导航、上一篇下一篇。这些标签需要自行定义,是因为系统的标签在确定当前栏目时,是通过文章的Tid来判断的,而多栏目文章,有时需要以KS_Tid2的值为准。因此在文章列表中,文章的URL需要添加当前栏目这个参数,来保证位置导航等标签显示正确的当前栏目。

我在实现以上思路的过程中,对于如何在sql查询时实现tid和KS_tid2的选择,百思不得其解。恳请高手指教。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
孤风大虾 当前离线

1700

主题

7

广播

118

粉丝
添加关注
级别:高一年

用户积分:10218 分
登录次数:451 次
注册时间:2006/3/28
最后登录:2022/3/10
孤风大虾 发表于:2011/8/17 0:09:55   | 只看该作者 查看该作者主题 藤椅 
做在线知识付费 选科汛云开店
多栏目是个难题。不过,可以换个思路,就是使用专题解决。
一篇文章可以在A专题,也可以在B专题。以这个思路来解决问题就会简单得多。
 
孤风自己开发了一套CMS系统,博采科讯的长处,去除了无关的功能,有兴趣的百度 FengCms
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lawfan 当前离线

9

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:20 分
登录次数:10 次
注册时间:2011/8/7
最后登录:2012/6/18
lawfan 发表于:2011/8/17 7:41:33   | 只看该作者 查看该作者主题 板凳 
科汛在线考试系统(NET)
专题的麻烦在于栏目导航需要手工设置,不方便管理
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
一生有你 当前离线

10439

主题

0

广播

18

粉丝
添加关注
级别:版主

用户积分:72521 分
登录次数:1969 次
注册时间:2006/7/1
最后登录:2021/8/25
一生有你 发表于:2011/8/17 9:52:04   | 只看该作者 查看该作者主题 报纸 
做在线知识付费 选科汛云开店

针对这个问题,一些CMS系统,是在栏目2下再产生一篇副本。即在ks_aritcle表里存在两条记录,只不过让他对应的tid值不同

 
我爱世界杯,我爱KesionCMS.
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lengxue 当前离线

3043

主题

18

广播

4

粉丝
添加关注
级别:大二

用户积分:10431 分
登录次数:1606 次
注册时间:2009/1/13
最后登录:2024/7/7
lengxue 发表于:2011/8/17 9:58:46   | 只看该作者 查看该作者主题 地板 
做在线知识付费 选科汛云开店

这个确实是个难题,用专题解决。


 
想旅游就来就爱旅游网
[url]http://bbs.shangrila66.com[/url]
大香格里拉旅游王国
[url]http://www.shangrila66.com[/url]
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lawfan 当前离线

9

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:20 分
登录次数:10 次
注册时间:2011/8/7
最后登录:2012/6/18
lawfan 发表于:2011/8/17 11:17:23   | 只看该作者 查看该作者主题 7楼 
科汛在线网校系统
以下是引用 一生有你在2011-8-17 9:52:04的发言:

针对这个问题,一些CMS系统,是在栏目2下再产生一篇副本。即在ks_aritcle表里存在两条记录,只不过让他对应的tid值不同

按此思路,能否通过字段介绍的JS功能,来实现提交副本的目的.

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lawfan 当前离线

9

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:20 分
登录次数:10 次
注册时间:2011/8/7
最后登录:2012/6/18
lawfan 发表于:2011/8/17 11:25:36   | 只看该作者 查看该作者主题 8楼 
就是说,用JS实现添加数据的功能.JS不是很懂,哪位高手指点一下?
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
sqzc 当前离线

2

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:2 分
登录次数:1 次
注册时间:2011/8/17
最后登录:2011/8/17
sqzc 发表于:2011/8/17 11:36:16   | 只看该作者 查看该作者主题 9楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.22070秒 powered by KesionCMS 9.0