admin_master.asp

来自「关于网络渗透技术的详细讲解」· ASP 代码 · 共 279 行

ASP
279
字号
<!-- #include file="../Conn.asp" -->
<!--#include file="inc.asp" -->
<!--#include file="../Include/Md5.asp" -->
<%
'====================================================================
'=              Copyright (c) 2004,NB联盟 E.P.K开发小组             =
'=                      All rights reserved.                        =
'=------------------------------------------------------------------=
'=                     文件名称:Admin_Master.asp                   =
'=                     摘    要:后台—管理员管理文件               =
'=------------------------------------------------------------------=
'=                     最后更新:eason007                           =
'=                     最后日期:2004-12-15                         =
'====================================================================

Admin_Nav

If Instr(1,Session("Master_Power"),"41,")<=0 Then 
	ErrMsg="对不起,你没有访问该页面的权限"
	Call Error(1)
End If

Dim Atcion
Atcion=Request.QueryString ("atcion")

Select Case Atcion
Case "add"
	Call Add_Admin
Case "edit"
	Call editpower
Case "power"
	Call SavePower
Case "save_admin"
	Call Save_Admin
Case "del"
	Call deluser
Case Else
	Call Main()
End Select

Sub Main
%>
<table width="98%" border="0" cellpadding="0" cellspacing="0" align="center" class=TableBorder>
  <tr height="22" valign="middle" align="center"> 
    <th width="5%">ID</th>
    <th width="25%">登陆名</th>
    <th width="20%">上次登陆时间</th>
    <th width="20%">上次登陆IP</th>
    <th width="10%">状态</th>
	<th width="20%">操作</th>
  </tr>
  <%
	Sql="select master_ID,master_name,lastime,lastip,iif(state=-1,'正常','禁止') from [nb_master] order by master_ID desc"
	'Response.Write (sql)
	Set rs=conn.execute(sql)
	Do While Not rs.EOF
	%>
  <tr valign="middle" bgcolor="#FFFFFF" align="center" height="22"> 
    <td><%=rs(0)%></td>
    <td><a href="?atcion=add&id=<%=rs(0)%>" title="点击编辑"><%=rs(1)%></a></td>
    <td><%=rs(2)%></td>
    <td><%=rs(3)%></td>
	<td><%=rs(4)%></td>
    <td><a href="?atcion=edit&id=<%=rs(0)%>">编辑权限</a> 
      | <a href="?atcion=del&id=<%=rs(0)%>" onclick="{if(confirm('确定删除吗?')){return true;}return false;}">删除</a></td>
  </tr>
  <%Response.Flush 
    rs.MoveNext 
    Loop%>
</table>
<%End Sub

Sub Add_Admin
	Dim PostId,BackName,State
	PostId=Request.QueryString ("id")
	
	If IsNumeric(PostId) And PostId<>"" And PostId<>"0" Then
		Sql="select master_name,state from [nb_master] where master_id="&PostId
		Set rs=conn.execute(sql)
		BackName=rs(0)
		State=rs(1)
		rs.Close
		set rs=nothing
		closedatabase
	End If
%>
<table cellpadding="2" cellspacing="1" border="0" width="95%" class="tableBorder" align=center>
<form action="?atcion=save_admin&id=<%=PostId%>" method=post id=form1 name=form1>
    <tr bgcolor=ffffff align="center"> 
      <th colspan=2 height=25>管理员管理--添加管理员 </th>
    </tr>
    <tr bgcolor=ffffff>
      <td width="26%" align="right" class=forumrow>后台登陆名称:</td>
      <td width="74%" class=forumrow><input type=text name="backname" value="<%=BackName%>">(可与注册名不同,20个英文字符长度) </td>
    </tr>
    <tr  bgcolor=ffffff>
      <td width="26%" align="right" class=forumrow>后台登陆密码:</td>
      <td width="74%" class=forumrow><input type="password" name="password">(<font color=red>如只修改用户登陆名而不修改密码请留空</font>) </td>
    </tr>
	<tr  bgcolor=ffffff>
      <td width="26%" align="right" class=forumrow>登陆状态:</td>
      <td width="74%" class=forumrow>是<input type="radio" name="State" value="1"<%If State Then%> checked <%End If%>> 否<input type="radio" name="State" value="0"<%If Not State Then%> checked <%End If%>></td>
    </tr>
    <tr align="center"  bgcolor=ffffff> 
      <td colspan="2" class=forumrow><input type="submit" name="Submit" value="添 加"></td>
    </tr>
</form>
</table>
<%End Sub

Sub EditPower
	Dim Userid,Power,Admin_Power
	Dim Level
	Dim j,i
	dim  masterform
	Userid=Request.QueryString ("id")

	Sql="select setting,Column_Setting,master_form from [nb_master] where master_id="&UserId
	Set rs=conn.execute(sql)
	Power=rs(0)
	Admin_Power=rs(1)
	masterform=rs(2)
%>
<script language="JavaScript">
<!--

function CheckAll(form)
  {
  for (var i=0;i<form.elements.length;i++)
    {
    var e = form.elements[i];
    if (e.name != 'chkall')
       e.checked = form.chkall.checked;
    }
  }
//-->
</script>
<table cellpadding="0" cellspacing="0" border="0" width="98%" class="tableBorder" align=center>
<form action="?atcion=power&userid=<%=UserId%>" method=post id=form1 name=form1>
	<tr valign="middle"> 
      <th colspan="2" height="22" align="left">&nbsp;栏目管理权限设定</th>
    </tr>
	<%
	sql="select id,title,code,iif(type=0,null,'专') from [NB_Column] order by code"
	set rs=conn.execute(sql)
	Do While Not rs.EOF
	%>
	<tr valign="middle" bgcolor="ffffff" onmouseover=this.style.backgroundColor='E4E8EF' onmouseout=this.style.backgroundColor=''> 
      <td height="22" align="left">&nbsp;<%
      If len(rs(2))>4 Then Response.Write "├"
      Level=(Len(rs(2))/4-1)*4
	  Response.Write String(Level,"-")%><b><%=rs(1)%>&nbsp;<%=rs(3)%></b></td>
      <td align="right">发布<input type=checkbox name="power" value="<%=rs(0)%>1"<%If InStr(Admin_Power,","&rs(0)&"1,")>0 Then %>checked<%End If%>>&nbsp;审核<input type=checkbox name=power value="<%=rs(0)%>2"<%If InStr(Admin_Power,rs(0)&"2,")>0 Then %>checked<%End If%>>&nbsp;编辑<input type=checkbox name=power value="<%=rs(0)%>3"<%If InStr(Admin_Power,rs(0)&"3,")>0 Then %>checked<%End If%>>&nbsp;删除<input type=checkbox name=power value="<%=rs(0)%>4"<%If InStr(Admin_Power,rs(0)&"4,")>0 Then %>checked<%End If%>>&nbsp;&nbsp;</td>
    </tr>
    <%
    Response.Flush
	rs.MoveNext
	Loop%>
	<tr valign="middle"> 
      <th colspan="2" height="22" align="left">&nbsp;后台管理权限设定</th>
    </tr>
    <%For i=0 To Ubound(Menu)-1%>
	<tr>         
	   <td height=25 class=forumRowHighlight colspan="2">&nbsp;<%=Menu(i,0)%></td>
	</tr>
	<tr>
		<td height=20 align=left class=forumrow colspan="2">
	<%For j=1 To Ubound(Menu,2)
		If IsEmpty(Menu(i,j)) Then Exit For%>
		&nbsp;&nbsp;&nbsp;&nbsp;<input type=checkbox name="admin_power" value="<%=i&j%>"<%If InStr(Power,i&j&",")>0 Then %>checked<%End If%>><%=i&j%>.<%=Menu(i,j)%>
		<%If (j+1) Mod 5=0 Then response.write "<br><br>"%>
	<%Next%>
			</td>
	</tr>
	<%Next%>
        <tr> 
      <td colspan='2' class=forumRowHighlight><b>税务业务分类管理权限设定</b></td>
    </tr>

    <tr> 
      <td colspan='2' class=forumRow>
		<%'定义业务分类ID集
	Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from form_"
rs.open sql,conn,1,3
do while not rs.eof%>
<input type="checkbox"  name="form_ch"  value="<%=rs("form_code")%>"<%If InStr(masterform,rs("form_code"))>0 Then %>checked<%End If%>><%=rs("form_name")%>
<%rs.movenext
loop	
%></td>
    </tr>

<tr> 
      <td colspan='5' class=forumRowHighlight>&nbsp;&nbsp;<input type="submit" name="Submit" value="更新">&nbsp;&nbsp;<input name=chkall type=checkbox value=on onclick=CheckAll(this.form)>选择所有权限</td>
    </tr>
</form>
</table>
<%End Sub

Function SavePower
	If Not ChkPost Then 
		ErrMsg="对不起,请不要从外部提交数据!"
		Call Error(1)
	End If
	Dim Admin_Power,Power,UserId,masterform
	Admin_Power=replace(Request.Form ("admin_power")," ","")
	Power=replace(Request.Form ("power")," ","")
	UserId=Request.QueryString ("userid")
	masterform=replace(Request.Form ("form_ch")," ","")
	If IsNumeric(UserId) And UserId<>"" And UserId<>"0" Then
		sql="update [nb_master] set Column_Setting=',"&Power&",',setting='"&Admin_Power&",',master_form='"&masterform&"' where master_id="&UserId
		'Response.Write sql
		conn.execute(sql)
	End If
	closedatabase
	Response.Redirect "admin_master.asp"
End Function

Function Save_Admin
	If Not ChkPost Then 
		ErrMsg="对不起,请不要从外部提交数据!"
		Call Error(1)
	End If
	Dim UserId,BackName,PassWord,PSQL,State
	UserId=Request.QueryString ("id")
	BackName=Request.Form ("backname")
	State=Request.Form ("state")
	PassWord=Request.Form ("password")
	If PassWord<>"" Then 
		PassWord=Md5(PassWord)
		PSQL=",master_password='"&PassWord&"'"
	End If
	If BackName="" Or Len(BackName)>50 Then 
		ErrMsg="登陆名为空或长度超过50个字符!"
		Call Error(1)
	End If
	
	If IsNumeric(UserId) And UserId<>"" And UserId<>"0" Then
		Sql="update nb_master set master_name='"&BackName&"',state="&State&""&PSQL&" where master_id="&UserId
		conn.execute(sql)
	Else
		Sql="select master_id from nb_master where [master_name]='"&BackName&"'"
		Set rs=conn.execute(sql)
		If Not rs.eof And Not rs.bof Then 
			FoundErr=True
			ErrMsg="对不起,后台登陆名重复!"
		ElseIf PassWord="" Then 
			FoundErr=True
			ErrMsg="对不起,请填写登陆密码!"
		Else
			Sql="insert into nb_master ([master_name],[master_password],state,Column_Setting,setting) values ('"&BackName&"','"&PassWord&"',"&State&",',',',')"
			conn.execute(sql)
		End If
		If FoundErr Then Call Error(1)
	End If
	
	closedatabase
	Response.Redirect "admin_master.asp"
End Function

Function deluser()
	If Not ChkPost Then 
		ErrMsg="对不起,请不要从外部提交数据!"
		Call Error(1)
	End If
	Dim UserId
	UserId=Request.QueryString ("id")
	If IsNumeric(UserId) And UserId<>"" And UserId<>"0" Then
		sql="delete from [nb_master] where master_ID="&UserId&" and master_name<>'"&session("master_name")&"'"
		conn.execute(sql)
	End If
	Response.Redirect Request.ServerVariables("HTTP_REFERER")
End Function
%>




⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?