📄 admin_label.asp
字号:
<%
Option Explicit
Response.Buffer = True
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 1
%>
<!--#Include File="../Conn.asp"-->
<!--#Include File="Admin_CheckPurview.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link href='Admin_Style.css' type='text/css' rel='stylesheet'>
<title>网站自定义标签管理</title>
<script language="javascript" src="../js/Common.js"></script>
<script language="javascript" src="../js/InstallDir.js"></script>
</head>
<body>
<%
If EL_Admin.Purview <> 1 Then
If EL_Admin.CheckAdminPurview(11, 3) = False Then
EL_Admin.ShowPurviewError("对不起!您没有足够的管理权限")
End If
End If
Dim CurrentPath, Search_Keywords, Search_Field
Dim ArrLabelType(2), LabelType
ArrLabelType(1) = "静态标签"
ArrLabelType(2) = "动态标签"
LabelType = EL_Common.ELRequest("LabelType", 2)
Search_Keywords = EL_Common.ReplaceBadChar(EL_Common.ELRequest("Search_Keywords", 1))
Search_Field = EL_Common.ReplaceBadChar(EL_Common.ELRequest("Search_Field", 1))
CurrentPath = "·您现在的位置:<a href='Admin_Label.asp'>自定义标签管理</a> "
%>
<table width="100%" border="0" cellpadding="0" cellspacing="1" class="Border">
<tr>
<td align="center" class="top_25"><strong>自定义标签管理</strong></td>
</tr>
<tr>
<td class="td_50">管理导航:<a href="<%=EL_CurrentScriptName%>">标签管理首页</a> | <a href="<%=EL_CurrentScriptName%>?LabelType=1&Action=Add">添加静态标签</a> | <a href="<%=EL_CurrentScriptName%>?LabelType=2&Action=Add">添加动态标签</a> | <a href="<%=EL_CurrentScriptName%>?Action=Import">导入标签</a> | <a href="<%=EL_CurrentScriptName%>?Action=Export">导出标签</a></td>
</tr>
</table>
<br>
<%
Select Case Action
Case "": Call ManageLabel()
Case "Add":
If LabelType = 1 Then
Call AddStaticLabel()
Else
Call AddDynamicLabel()
End If
Case "Save": Call SaveLabel(0)
Case "Modify":
If LabelType = 1 Then
Call ModifyStaticLabel()
Else
Call ModifyDynamicLabel()
End If
Case "SaveModify": Call SaveLabel(1)
Case "Delete": Call SaveLabel(2)
Case "GetTableName": Call GetTableName()
Case "GetFieldName": Call GetFieldName()
Case "Import": Call ImportLabel()
Case "Export": Call ExportLabel()
End Select
Call EL_Common.Bottom()
Call ApplicationTerminate()
Sub SaveLabel(UpdateType)
On Error Resume Next
Dim LabelCmd
Dim LabelID, LabelName, LabelType, Intro, LabelLevel, TSQL, Content, SQLString
Dim RecordNum, MainTable, SubTable, MainCheckField, SubCheckField, MainField, SubField, Where, Parameters
LabelID = EL_Common.ELRequest("LabelID", 2)
LabelName = EL_Common.ELRequest("LabelName", 1)
LabelType = EL_Common.ELRequest("LabelType", 2)
LabelLevel = EL_Common.ELRequest("LabelLevel", 2)
Intro = EL_Common.ELRequest("Intro", 1)
Content = EL_Common.ELRequest("Content", 1)
RecordNum = EL_Common.ELRequest("RecordNum", 2)
MainTable = EL_Common.ELRequest("MainTable", 1)
SubTable = EL_Common.ELRequest("SubTable", 1)
MainCheckField = EL_Common.ELRequest("MainCheckField", 1)
SubCheckField = EL_Common.ELRequest("SubCheckField", 1)
MainField = Replace(EL_Common.ELRequest("MainField", 1), " ", "")
SubField = Replace(EL_Common.ELRequest("SubField", 1), " ", "")
Where = EL_Common.ELRequest("Where", 1)
Parameters = EL_Common.ELRequest("Parameters", 1)
If LabelType = 2 Then
TSQL = RecordNum &"@"& MainTable &"@"& SubTable &"@"& MainCheckField &"@"& SubCheckField &"@"& MainField &"@"& SubField &"@"& Where
Else
TSQL = ""
End If
Call EL_Common.InitCommand(LabelCmd, "EL_SP_Label")
With LabelCmd
.Parameters.Append .CreateParameter("RETURN", 2, 4)
.Parameters.Append .CreateParameter("@UpdateType", 3, 1, 4, UpdateType)
If UpdateType = 0 Then
.Parameters.Append .CreateParameter("@LabelID", 3, 2, 4)
Else
.Parameters.Append .CreateParameter("@LabelID", 3, 1, 4, LabelID)
End If
.Parameters.Append .CreateParameter("@LabelName", 200, 1, 100, LabelName)
.Parameters.Append .CreateParameter("@LabelType", 3, 1, 4, LabelType)
.Parameters.Append .CreateParameter("@LabelLevel", 3, 1, 4, LabelLevel)
.Parameters.Append .CreateParameter("@Intro", 200, 1, 255, Intro)
.Parameters.Append .CreateParameter("@Parameters", 200, 1, 255, Parameters)
.Parameters.Append .CreateParameter("@TSQL", 200, 1, 1000, TSQL)
.Parameters.Append .CreateParameter("@Content", 203, 1, EL_Common.LenParameter(Content), Content)
.Execute()
End With
If LabelCmd(0) = 40 Then
EL_Common.ShowErrorMsg("指定标签不存在")
Set LabelCmd = Nothing
Exit Sub
End If
Set LabelCmd = Nothing
If UpdateType = 0 Then
EL_Common.ShowSuccessMsg("添加"& ArrlabelType(LabelType) &"成功<br>标签名称:"& EL_Common.ServerHTMLEncode(LabelName))
ElseIf UpdateType = 1 Then
EL_Common.ShowSuccessMsg("修改"& ArrlabelType(LabelType) &"成功<br>标签名称:"& EL_Common.ServerHTMLEncode(LabelName))
Else
Response.Redirect ComeURL
End If
EL_Common.ShowScriptError()
End Sub
Function Join2TableName(ByVal MainField, ByVal TableName)
Dim i, arr, r
arr = Split(MainField, ",")
For i = 0 To Ubound(arr)
r = EL_Common.Join2String(r, TableName &"."& arr(i), ",")
Next
Join2TableName = r
End Function
Function RemoveTableName(ByVal MainField, ByVal TableName)
RemoveTableName = Replace(MainField, TableName &".", "")
End Function
Function EncodeGB(ByVal s)
Dim l, i, r
l = Len(s)
r = ""
For i = 1 To l
r = EL_Common.Join2String(r, AscW(Mid(s, i, 1)), "$")
Next
EncodeGB = r
End Function
Sub GetTableName()
Response.Clear()
Dim TableCmd, rsTable, i, RowCount
Call EL_Common.InitCommonCmd(TableCmd, rsTable, "sysobjects", "name", "xtype='U' AND name!='dtproperties' AND name!='EL_Admin' ORDER BY name")
rsTable.Close()
RowCount = TableCmd(0)
rsTable.Open()
For i = 1 To RowCount
Response.Write rsTable(0) &"$"
If i < RowCount Then rsTable.MoveNext
Next
rsTable.Close()
Set rsTable = Nothing
Set TableCmd = Nothing
Call ApplicationTerminate()
End Sub
Sub GetFieldName()
Response.Clear()
Dim FieldCmd, rsField, i, RowCount
Call EL_Common.InitCommonCmd(FieldCmd, rsField, "syscolumns", "name", "id=object_id('"& EL_Common.ELRequest("TableName", 1) &"') ORDER BY colid")
rsField.Close()
RowCount = FieldCmd(0)
rsField.Open()
For i = 1 To RowCount
Response.Write rsField(0) &"$"
If i < RowCount Then rsField.MoveNext
Next
rsField.Close()
Set rsField = Nothing
Set FieldCmd = Nothing
Call ApplicationTerminate()
End Sub
Function fFieldName(TableName, JoinType)
Dim FieldCmd, rsField, i, RowCount, ReturnString
Call EL_Common.InitCommonCmd(FieldCmd, rsField, "syscolumns", "name", "id=object_id('"& TableName &"') ORDER BY colid")
rsField.Close()
RowCount = FieldCmd(0)
rsField.Open()
ReturnString = ""
For i = 1 To RowCount
If JoinType = 1 Then
ReturnString = EL_Common.Join2String(ReturnString, TableName &"."& rsField(0), ",")
Else
ReturnString = EL_Common.Join2String(ReturnString, rsField(0), ",")
End If
If i < RowCount Then rsField.MoveNext
Next
rsField.Close()
Set rsField = Nothing
Set FieldCmd = Nothing
fFieldName = ReturnString
End Function
Sub ExportLabel()
On Error Resume Next
Dim ExportStep, LabelID, Disabled, LabelData, IsClear
Dim LabelCmd, rsLabel, LabelConn, RowCount, i
Dim FSO, LabelName, Content
ExportStep = EL_Common.ELRequest("ExportStep", 2)
If ExportStep = 0 Then
Call EL_Common.InitCommonCmd(LabelCmd, rsLabel, "EL_Label", "LabelID, LabelName", "1=1")
rsLabel.Close()
RowCount = LabelCmd(0)
%>
<script language="javascript">
function Check(frm){
if(frm.LabelID.value.trim()=="" || frm.LabelID.options.selectedIndex == -1){
alert("请选择要导出标签");
frm.LabelID.focus();
return false;
}
SubmitOnce(frm);
return;
}
</script>
<form name="myform" action="Admin_Label.asp" method="post" onSubmit="return Check(this)">
<table width="100%" border="0" cellpadding="0" cellspacing="1" class="Border">
<tr>
<td colspan="2" class="top_25"><strong>导出标签</strong></td>
</tr>
<tr>
<td width="19%" class="td_ItemName"><strong>选择要导出的标签</strong></td>
<td width="81%" class="td_25">
<select name="LabelID" size="10" multiple id="LabelID" style="height:250px; width:250px;">
<%
If RowCount=0 Then
Response.Write "<option value=''>系统中没有可以导出的标签</option>"
Disabled = "disabled"
Else
Disabled = ""
rsLabel.Open()
For i = 1 To RowCount
Response.Write "<option value='"& rsLabel(0) &"'>"& rsLabel(1) &"</option>"
If i<RowCount Then rsLabel.MoveNext
Next
rsLabel.Close()
End If
%>
</select></td>
</tr>
<tr>
<td class="td_ItemName"><strong>目标数据表</strong></td>
<td class="td_25"><input name="LabelData" type="text" id="LabelData" value="<%=InstallDir%>EL_Label.mdb" size="30">
<input name="IsClear" type="checkbox" class="nomargin" id="IsClear" value="1" checked>
先清空目标数据表</td>
</tr>
<tr>
<td class="td_ItemName"> </td>
<td class="td_50"><input type="submit" name="Submit33" value=" 导 出 " <%=Disabled%>>
<input name="Action" type="hidden" id="Action" value="Export">
<input name="ExportStep" type="hidden" id="ExportStep" value="1"></td>
</tr>
</table>
</form>
<%
Set rsLabel = Nothing
Set LabelCmd = Nothing
ElseIf ExportStep = 1 Then
LabelID = EL_Common.ELRequest("LabelID", 1)
IsClear = EL_Common.ELRequest("IsClear", 2)
LabelData = EL_Common.ELRequest("LabelData", 1)
Set LabelConn = Server.CreateObject("ADODB.Connection")
LabelConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(LabelData)
If Err Then
Err.Clear
EL_Common.ShowErrorMsg("打开标签数据表错误,无法完成标签导出操作,请返回上一步检查数据表路径是否正确")
LabelConn.Close()
Set LabelConn = Nothing
Exit Sub
End If
Set rsLabel = LabelConn.Execute("Select LabelID,LabelName,LabelType,LabelLevel,Intro,TSQL,Content From EL_Label")
If Err Then
Err.Clear()
EL_Common.ShowErrorMsg("数据表中的数据结构错误,无法导出标签")
rsLabel.Close()
Set rsLabel = Nothing
LabelConn.Close()
Set LabelConn = Nothing
Exit Sub
End If
rsLabel.Close()
Set rsLabel = Nothing
If IsClear = 1 Then
LabelConn.Execute("Delete FROM EL_Label")
End If
Call EL_Common.InitCommonCmd(LabelCmd, rsLabel, "EL_Label", "LabelName,LabelType,LabelLevel,Intro,TSQL,Content", "LabelID IN("& LabelID &")")
rsLabel.Close()
RowCount = LabelCmd(0)
If RowCount>0 Then
rsLabel.Open()
For i = 1 To RowCount
LabelConn.Execute("INSERT INTO EL_Label(LabelName,LabelType,LabelLevel,Intro,TSQL,Content) VALUES('"& Replace(rsLabel("LabelName"), "'", "''") &"',"& rsLabel("LabelType") &","& rsLabel("LabelLevel") &",'"& Replace(rsLabel("Intro"), "'", "''") &"','"& Replace(rsLabel("TSQL"), "'", "''") &"','"& Replace(rsLabel("Content"), "'", "''") &"')")
If i<RowCount Then rsLabel.MoveNext
Next
rsLabel.MoveNext
End If
Set rsLabel = Nothing
Set LabelCmd = Nothing
LabelConn.Close()
Set LabelConn = Nothing
EL_Common.ShowScriptError()
Response.Redirect "Admin_Label.asp?Action=Export&ExportStep=2"
ElseIf ExportStep = 2 Then
EL_Common.ShowSuccessMsg("成功导出标签")
End If
EL_Common.ShowScriptError()
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -