账号通
    

账号  

密码  

7659

查看

15

回复
主题:二次开发科汛,新增SQL标签"{$SQLReplace}"用以取代asp的函数split [收藏主题] 本贴被认定为精华 转到:  
linksy 当前离线

188

主题

0

广播

1

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

用户积分:2516 分
登录次数:158 次
注册时间:2007/6/14
最后登录:2015/12/16
linksy 发表于:2009/3/31 16:18:00   | 只看该作者 查看该作者主题 楼主 
科汛在线商城系统(NET)

需求说明


有时我们需要通过SQL标签调用栏目的介绍(classbasicinfo)及自定义内容(classdefinecontent),他们的结构是用这种方式存储的"a|||b|||c",这个时间,如果我们需要其中的一项,就需要split函数,而科汛没有提供,为此特意二次开发


代码修改:Kesion.Label.SQLCls.asp


 


示例:{$SQLReplace({$Field(ClassDefineContent,Text,0,0,2,)},||||,0)}


 


参说说明:参数1是为要拆分的内容,参数2是拆分的分割符,参数3是取第几位,注意是以0开始的


 


找到大约350行,增加以下红色部分


 


    End If
     KS_RS_Obj.MoveNext
   Next
  GetCirLabelContent=MySplitField(GetCirLabelContent)
  End Function


 


  Function MySplitField(lpFieldValue)
   Dim regEx, Matches, Match
   Dim FieldParam,FieldParamArr,mytempValue,mytempNum,mytarget,templpFieldValue
   Set regEx = New RegExp
   regEx.Pattern = "{\$SQLReplace\([^{\$}]*}"
   regEx.IgnoreCase = True
   regEx.Global = True
   Set Matches = regEx.Execute(lpFieldValue)  
   For Each Match In Matches
    FieldParam    = Replace(Replace(Match.Value,"{$SQLReplace(",""),")}","")
    FieldParamArr = Split(FieldParam,",")
    mytempValue=split(replace(Replace(KS.LoseHtml(KS.HtmlCode(FieldParamArr(0)))," ","")," ",""),trim(FieldParamArr(1)))
 if ubound(mytempValue)>=cint(FieldParamArr(2)) then lpFieldValue=Replace(lpFieldValue,Match.Value,mytempValue(FieldParamArr(2)))
   Next
     MySplitField=lpFieldValue
  End Function


 


调用说明:


SQL语句:select top {$Param(0)} classid,id,foldername,ClassDefineContent from ks_class where tn='{$Param(1)}' and topflag=1 order by folderorder asc


 


循环部分:<dl>[loop={$Param(0)}]<dt>{$SQLReplace({$Field(ClassDefineContent,Text,0,0,2,)},||||,0)}【<a href="{$Field(id,GetInfoUrl,100,1)}">{$Field(foldername,Text,0,...,0,)}</a>】</dt><dd>{SQL_疾病导航内部(10,{$Field(id,GetInfoUrl,100,2)})}</dd>[/loop]</dl>


 


演示:http://www.shdazhongbanjia.com/html/list_649.html

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

807

主题

26

广播

12

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

用户积分:5898 分
登录次数:575 次
注册时间:2007/3/25
最后登录:2020/3/29
56look 发表于:2009/3/31 23:17:00   | 只看该作者 查看该作者主题 沙发 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
k52086 当前离线

1156

主题

0

广播

0

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

用户积分:5486 分
登录次数:192 次
注册时间:2008/12/18
最后登录:2011/3/10
k52086 发表于:2009/3/31 21:34:00   | 只看该作者 查看该作者主题 藤椅 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
gyxin123 当前离线

1204

主题

0

广播

0

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

用户积分:9198 分
登录次数:441 次
注册时间:2007/12/23
最后登录:2012/10/16
gyxin123 发表于:2009/3/31 18:23:00   | 只看该作者 查看该作者主题 板凳 
科汛智能建站系统
以下是引用cvq在2009-3-31 17:49:00的发言:
这主意不错,希望官方在下个版本考虑一下,方便取得需要分割的字段,如图片系统的图片地址、多个作者多个来源等。

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

93

主题

0

广播

0

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

用户积分:1205 分
登录次数:133 次
注册时间:2006/7/1
最后登录:2017/11/29
zt2000 发表于:2009/3/31 17:51:00   | 只看该作者 查看该作者主题 报纸 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
cvq 当前离线

704

主题

0

广播

0

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

用户积分:4700 分
登录次数:151 次
注册时间:2008/8/26
最后登录:2016/8/22
cvq 发表于:2009/3/31 17:49:00   | 只看该作者 查看该作者主题 地板 
这主意不错,希望官方在下个版本考虑一下,方便取得需要分割的字段,如图片系统的图片地址、多个作者多个来源等。
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
一生有你 当前离线

10439

主题

0

广播

18

粉丝
添加关注
级别:版主

用户积分:72521 分
登录次数:1969 次
注册时间:2006/7/1
最后登录:2021/8/25
一生有你 发表于:2009/3/31 17:26:00   | 只看该作者 查看该作者主题 7楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
办公之旅 当前离线

586

主题

9

广播

2

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

用户积分:2594 分
登录次数:226 次
注册时间:2009/8/6
最后登录:2023/6/25
办公之旅 发表于:2012/5/10 23:12:35   | 只看该作者 查看该作者主题 8楼 
科汛智能建站系统

为什么新版本里还没有加这个功能呢 这样每次升级好麻烦那

 
无预付费招收代理 1G内存VPS 只需70元 免备案 www.moondns.net QQ:862379676
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
houdakun520 当前离线

141

主题

0

广播

0

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

用户积分:140 分
登录次数:12 次
注册时间:2012/4/13
最后登录:2012/5/16
houdakun520 发表于:2012/5/11 10:50:46   | 只看该作者 查看该作者主题 9楼 
做在线知识付费 选科汛云开店
对不起,该用户所发的帖已全被锁定!
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
kmyyzaox 当前离线

122

主题

1

广播

1

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

用户积分:139 分
登录次数:35 次
注册时间:2012/4/28
最后登录:2012/6/30
kmyyzaox 发表于:2012/5/11 11:13:23   | 只看该作者 查看该作者主题 10楼 
对不起,该用户所发的帖已全被锁定!
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.25098秒 powered by KesionCMS 9.0