账号通
    

账号  

密码  

2861

查看

7

回复
主题:[原创]sql标签之通用化做法 [收藏主题] 转到:  
monfs 当前离线

888

主题

2

广播

1

粉丝
添加关注
级别:七年级

用户积分:4384 分
登录次数:556 次
注册时间:2006/4/8
最后登录:2023/2/25
monfs 发表于:2007/1/27 16:39:00   | 只看该作者 查看该作者主题 楼主 
科汛在线商城系统(NET)

前言:在学校的日子总感觉很忙,没有经常上论坛,也没有深入研究程序,今日重新对系部网站的sql标签做通用化处理,我一直最喜欢的就是这个功能,因此我架构的系部站点全部使用了sql标签;当时就发现sql标签有个参数的用法,只是一直官方也没有出教程,好在alluse版主在http://bbs.kesion.com/dispbbs.asp?boardid=2&id=14939帖子中有明确的解释,当时收藏后没有怎么研究,今日看了一遍,大有感慨,特写此教程并同时将曾今写的东西通用化!

望广大kesion爱好者能有更多理解!

 :P

下面这段sql语句是我以前没有通用化的时候写的,比较的长,其实很好理解

select KS_Article.id,KS_Article.Tid,KS_Article.Title,KS_Article.Adddate,KS_Class.ID,KS_Class.FolderName from KS_Article,KS_Class where KS_Article.Tid = KS_Class.id and KS_Class.tn = '20061509588074' or  KS_Article.Tid = KS_Class.id and KS_Class.id = '20061509588074'order by KS_Article.id desc

那么他所要实现的效果是

 
此主题相关图片如下:

相关html代码(需有CSS支持)

<ul>[loop=10]
      <li><span>{$Field(adddate,Date,MM-DD)}</span><div>[<a href="{$Field(tid,GetClassUrl,1,1)}">{$Field(foldername,Text,0,…,0,)}</a>] <a href="{$Field(id,GetInfoUrl,1,1)}" target="_blank">{$Field(title,Text,36,…,0,)}</a></div></li>[/loop]
</ul>

这个是我在首页的应用,大家可以很明显的看到,实现的效果实际上是查询相同副栏目下子栏目的新闻,并且显示栏目名称

更新后的sql查询语句

select KS_Article.id,KS_Article.Tid,KS_Article.Title,KS_Article.Adddate,KS_Class.ID,KS_Class.FolderName from KS_Article,KS_Class where KS_Article.Tid = KS_Class.id and (KS_Class.tn = '{$Param(0)}' or KS_Class.id = '{$Param(0)}') order by KS_Article.id desc

此sql语句的标签名称为:首页通用Param

那么对应在模板中的调用为:{SQL_首页通用Param(20061509588074)}

这里的20061509588074,即副栏目的id,通用后,一条sql就可以实现多个栏目的共同调用!

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

5

主题

0

广播

0

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

用户积分:326 分
登录次数:31 次
注册时间:2006/12/1
最后登录:2008/3/18
yangyg324 发表于:2007/4/2 17:20:00   | 只看该作者 查看该作者主题 沙发 
做在线知识付费 选科汛云开店

不支持显示多级栏目下的文章

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

381

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:5496 分
登录次数:178 次
注册时间:2006/4/4
最后登录:2008/12/23
colin 发表于:2007/1/29 17:13:00   | 只看该作者 查看该作者主题 藤椅 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
monfs 当前离线

888

主题

2

广播

1

粉丝
添加关注
级别:七年级

用户积分:4384 分
登录次数:556 次
注册时间:2006/4/8
最后登录:2023/2/25
monfs 发表于:2007/1/29 17:12:00   | 只看该作者 查看该作者主题 板凳 
科汛在线考试系统(NET)

当然了!!!所有的页面都可以,频道首页也是可以的,系统默认的div+css频道是带table的,并且可扩展性不强,既然说他强大,说他通用,当然是全站都可以使用的!是要sql语句一样,查询不同的内容完全可以做到.

4楼所说的分页,当然是可以的,但是我不理解你要怎么做分页.

通用后,你可以实现查询并且分页同一属性或者多属性的内容,例如你可以实现查询分页全部是头条的新闻,我的做法是命名为往日头条!

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

200

主题

0

广播

0

粉丝
添加关注
级别:二年级

用户积分:1108 分
登录次数:214 次
注册时间:2006/8/27
最后登录:2019/4/17
awmust 发表于:2007/1/27 20:59:00   | 只看该作者 查看该作者主题 报纸 
科汛在线网校系统
以下是引用monfs在2007-1-27 16:39:56的发言:

前言:在学校的日子总感觉很忙,没有经常上论坛,也没有深入研究程序,今日重新对系部网站的sql标签做通用化处理,我一直最喜欢的就是这个功能,因此我架构的系部站点全部使用了sql标签;当时就发现sql标签有个参数的用法,只是一直官方也没有出教程,好在alluse版主在http://bbs.kesion.com/dispbbs.asp?boardid=2&id=14939帖子中有明确的解释,当时收藏后没有怎么研究,今日看了一遍,大有感慨,特写此教程并同时将曾今写的东西通用化!

望广大kesion爱好者能有更多理解!

 :P

下面这段sql语句是我以前没有通用化的时候写的,比较的长,其实很好理解

select KS_Article.id,KS_Article.Tid,KS_Article.Title,KS_Article.Adddate,KS_Class.ID,KS_Class.FolderName from KS_Article,KS_Class where KS_Article.Tid = KS_Class.id and KS_Class.tn = '20061509588074' or  KS_Article.Tid = KS_Class.id and KS_Class.id = '20061509588074'order by KS_Article.id desc

那么他所要实现的效果是

 
此主题相关图片如下:

相关html代码(需有CSS支持)

<ul>[loop=10]
      <li><span>{$Field(adddate,Date,MM-DD)}</span><div>[<a href="{$Field(tid,GetClassUrl,1,1)}">{$Field(foldername,Text,0,…,0,)}</a>] <a href="{$Field(id,GetInfoUrl,1,1)}" target="_blank">{$Field(title,Text,36,…,0,)}</a></div></li>[/loop]
</ul>

这个是我在首页的应用,大家可以很明显的看到,实现的效果实际上是查询相同副栏目下子栏目的新闻,并且显示栏目名称

更新后的sql查询语句

select KS_Article.id,KS_Article.Tid,KS_Article.Title,KS_Article.Adddate,KS_Class.ID,KS_Class.FolderName from KS_Article,KS_Class where KS_Article.Tid = KS_Class.id and (KS_Class.tn = '{$Param(0)}' or KS_Class.id = '{$Param(0)}') order by KS_Article.id desc

此sql语句的标签名称为:首页通用Param

那么对应在模板中的调用为:{SQL_首页通用Param(20061509588074)}

这里的20061509588074,即副栏目的id,通用后,一条sql就可以实现多个栏目的共同调用!

不错,难道只能在首页中用吗?其它页不行吗?应该到处都可以用吧?:

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

8

主题

0

广播

0

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

用户积分:220 分
登录次数:4 次
注册时间:2007/1/27
最后登录:2007/1/27
250250 发表于:2007/1/27 17:23:00   | 只看该作者 查看该作者主题 地板 
科汛智能建站系统
楼主,能做分页吗?
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
250250 当前离线

8

主题

0

广播

0

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

用户积分:220 分
登录次数:4 次
注册时间:2007/1/27
最后登录:2007/1/27
250250 发表于:2007/1/27 17:23:00   | 只看该作者 查看该作者主题 7楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
神龙 当前离线

123

主题

0

广播

0

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

用户积分:1042 分
登录次数:163 次
注册时间:2006/5/15
最后登录:2008/7/15
神龙 发表于:2007/1/27 16:53:00   | 只看该作者 查看该作者主题 8楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行2.43164秒 powered by KesionCMS 9.0