账号通
    

账号  

密码  

1768

查看

4

回复
主题:科讯9.5后台修改栏目英文名时检测是否重复(可修改单页面英文名)【已解决】 [收藏主题] 转到:  
anflash 当前离线

209

主题

2

广播

36

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

用户积分:1084 分
登录次数:631 次
注册时间:2011/12/22
最后登录:2024/8/3
anflash 发表于:2014/5/22 21:55:40   | 显示全部帖子 查看该作者主题 楼主 
科汛在线考试系统(NET)

无意中发现,科讯9.5修改栏目英文名时不检测英文名是否重复。于是想办法解决,顺便把单页面英文名不能修改也修复了。限制了修改栏目英文名的权限,只有admin可以修改栏目英文名。

修改asp

KS_Cls/Kesion.ClassCls.asp



TJ=RST("tj")


Dim An_folder:An_folder=RST("folder") ' 定义变量


RST.Close


'==========修改栏目英文名称===================================


   if request("FolderEname")<>request("oldFolderEname")
and KS.C("AdminName")="admin"
then

An_folder=left(An_folder,len(An_folder)-len(request("oldFolderEname"))-1)&request("FolderEname")&"/"

'Call KS.AlertHistory(KS.G("folderename")&"|"&request("oldFolderEname")&"|"&An_folder,-1): .End

IF Not(Conn.Execute("Select folder from KS_Class Where TN in(Select TN from KS_Class Where id='"&KS.G("FolderID")&"') and  id<>'"&KS.G("FolderID")&"' and Folder='"&An_folder&"'").Eof) Then

   Call KS.AlertHistory("栏目英文名已存在!",-1): .End

End IF


rst.open "select id,foldername,folder,tj from KS_Class Where
classtype<>2
and ts like '%" & KS.G("FolderID") &"%'",conn,1,3


do while not rst.eof


  dim ntj:ntj=tj-1


  dim ii,folderarr:folderarr=split(rst("folder"),"/")


  dim newFolder:NewFolder=""


  for ii=0 to ubound(folderarr)


    if ii=ntj then


  if newfolder="" then


  newfolder=KS.G("folderename")


  else


   newfolder=newfolder & "/" & KS.G("folderename")


  end if


else


if newfolder="" then


newfolder=folderarr(ii)


else


newfolder=newfolder & "/" & folderarr(ii)


end if


end if


  next


  rst("folder")=newfolder


rst.movenext


loop


rst.close

rst.open "select folder from KS_Class Where classtype=3 and id='" & KS.G("FolderID") &"'",conn,1,3

   IF Not(rst.Eof) Then

An_folder=left(An_folder,len(An_folder)-len(request("FolderEname"))-1)

IF An_folder<>"" Then

   An_folder=An_folder&"/"&request("FolderEname")

Else

   An_folder=request("FolderEname")

End IF

An_folder=Replace(An_folder,".html","")&".html" '强制使用html

IF Not(Conn.Execute("Select folder from KS_Class Where TN in(Select TN from KS_Class Where id='"&KS.G("FolderID")&"') and  id<>'"&KS.G("FolderID")&"' and Folder='"&An_folder&"'").Eof) Then

   Call KS.AlertHistory("单页面英文名已存在!",-1): .End

End IF

'Call KS.AlertHistory(An_folder,-1): .End

rst("folder")=An_folder

rst.update

End IF

rst.close


end if


'================================================================


备注:红色为添加部分

 
个人QQ:845977434
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.07813秒 powered by KesionCMS 9.0