KesionCMS系统SQL标签应用详解

KesionCMS从早期版本就开始支持SQL标签,由原来最简单的应用,发展到支持参数调用,支持循环体判断等,至今已是比较完善前台调用应用了。但由于使用SQL标签的前提是需要会写SQL语句的,相对系统函数标签来讲入门高了点,但由于SQL标签的灵活性,它不仅能调用科汛主数据库的所有表,还可以调用外部数据源的所有表,如excel,mssql,mysql,access等多种数据源。所以我们有必要进一步的了解SQL标签的应用。

具体的SQL 语句初学者还得多加努力去学习,如可以参阅:http://bbs.kesion.com/dispbbs.asp?boardid=42&Id=42054。今天主要给大家说下SQL标签参数调用的应用方法,一些用户还不能很好的掌握这个功能。

一.Param参数的应用

 这个应该是较常见的应用,Param参数从0开始索引,对应的参数如{$Param(0)},{$Param(1)}...{$Param(10)}

举例说明:我们建一个通用的SQL标签,调用10条文章,并且要求这个SQL标签能根据传递不同的栏目号重复的使用。

标签名称:通用文章列表

SQL语句如下:

select top 10 id,title,adddate from ks_article where tid='{$Param(0)}'  and verific=1 order by id desc

循环体:

[loop=10]
<li><a href="{$Field(id,GetInfoUrl,1,1)}">{$Field(title,Text,0,...,0,)}<a></li>
[/loop]


注意到上面的SQL语句中我们应用到了{$Param(0)},即这个标签具备接收参数功能了,接下来我们就可以在想要调用的模板里通过以下形式调用了

{SQL_通用文章列表(栏目ID)}   tips:栏目ID号可以到后台的栏目管理里查看

如:{SQL_通用文章列表(2010122222222)},{SQL_通用文章列表(20100212555444)}

上面标签还是有点点局限性,可能我们有些地方只需调用3条数据,而有些地方要调用5条,这时我们可以对sql语句稍加修改,如下

sql语句:

select top {$Param(1)} id,tite,adddate from KS_Article Where Tid='{$Param(0)}' and verific=1 order by id desc

循环体:

[loop={$Param(1)}]
<li><a href="{$Field(id,GetInfoUrl,1,1)}">{$Field(title,Text,0,...,0,)}<a></li>
[/loop]

这样我们就可以自由的获取条数了,如

如:{SQL_通用文章列表(2010122222222,3)},{SQL_通用文章列表(20100212555444,5)}

使用说明:

1.标签的参数调用以逗号隔开,不能将通用标签作为标签参数,如以下调用是错误的

{SQL_标签名称(KESION 科汛)}

2.SQL标签不管带不带参数,调用时一定都要带括号,否则会出错

错误:

{SQL_标签名称}

正确:

{SQL_标签名称()}
 

二、ReqStr和ReqNum标签的应用

 接下来我们讲下ReqStr和ReqNum的应用,这两个标签能获得URL传递过来的参数,ReqStr得到的是字符类型的数据,而Req取得的是数字类型的数据

举例说明:我们要通过URL来获取某个会员最新发表的的20篇文章
URL如下:http://www.abc.com/index.asp?inputer=admin

标签名称:通用会员文章列表

SQL语句:

select top 20 id,title,adddate from ks_article where inputer='{ReqStr(inputer)}' and verific=1 order by id desc

循环体:

[loop=20]
<li><a href="{$Field(id,GetInfoUrl,1,1)}">{$Field(title,Text,0,...,0,)}<a></li>
[/loop]

 调用:{SQL_通用会员文章列表()}

注意到我们的sql语句里应用了{ReqStr(inputer)},通过这个标签可以获得url传递过来的inputer参数值admin,即最终转换为这样的sql语句

select top 10 id,title,adddate from ks_article where inputer='admin' and verific=1 order by id desc

说明:

1.此应用适合于需要根据url传参数的地方

2.如果获取得是数字,请用ReqNum标签,否则可以导致你的数据库存在注入漏洞。


【本站声明】
  1、本站文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系。
  2、本网站不对文章中所涉及的内容真实性、准确性、可靠性负责,仅系客观性描述,如您需要了解该类商品/服务详细的资讯,请您直接与该类商品/服务的提供者联系。


KESION 科汛软件

KESION 科汛软件是国内领先的在线教育软件及私域社交电商软件服务提供商,长期专注于为企业提供在线教育软件及社交电商SaaS平台解决方案。
公司核心产品云开店SaaS社交电商服务平台、在线教育SaaS服务平台、教育企业数字化SaaS云平台、企微营销助手、私有化独立部署品牌网校和在线教育咨询等。

KESION 不断通过技术创新,提供产品和服务,助力企业向数字化转型,通过科技驱动商业革新,让商业变得更智慧!



▼点击进入科汛官网了解更多



热门标签
KesionCMS
上/下篇
换一换相关推荐
精选内容
热点精选