📄 admin_address_add.asp
字号:
<%
'#############################################################
'# 中国在线--极酷论坛 ver.2001 3.0
'#
'# 版权所有: 中国在线 (ChinaXP.Net)
'#
'# 制作人 : 周周 (SeeYa!)
'#
'#
'# 主页地址: http://www.ChinaXP.net/ 中国在线
'# http://www.ChinaXP.Net/bbs/ 中国在线--极酷论坛
'#
'#############################################################
%>
<!--#INCLUDE FILE="config.asp" -->
<% If Session(strCookieURL & "Approval") = "15916941253" Then %>
<!--#INCLUDE file="inc_functions.asp" -->
<!--#INCLUDE FILE="inc_code.asp" -->
<!--#INCLUDE file="inc_top.asp" -->
<script language="JavaScript">
<!--
function OpenPreview()
{
var curCookie = "strMessagePreview=" + escape(document.PostTopic.Message.value);
document.cookie = curCookie;
popupWin = window.open('pop_preview.asp', 'preview_page', 'scrollbars=yes,width=550,height=250')
}
//-->
</script>
<%
strIPEditMode = Request.Form("mode")
if strIPEditMode = "add_ip" then
strIPStart = Request.Form("IPStart")
strIPEnd = Request.Form("IPEnd")
strIPProvince = Request.Form("Province")
strIPCIty = Request.Form("City")
if ChkIPString(strIPStart) And ChkIPString(strIPEnd) then
strIPStartLong = GetIPAddrLong(strIPStart)
strIPEndLong = GetIPAddrLong(strIPEnd)
strSQL = "SELECT C_STRIPProvince, C_STRIPDetail, C_STRIPStart, C_STRIPEnd"
strSQL = strSQL & " FROM " & strTablePrefix & "Address WHERE C_STRIPStart>=" & strIPStartLong & " AND C_STRIPEnd<=" & strIPEndLong & " ORDER BY C_STRIPStart ASC, C_STRIPEnd ASC"
set IpRS = my_Conn.Execute (strSQL)
IpRS.close
Set IpRS = Nothing
else
' IP地址输入不正确
Response.Write ("IP地址输入不正确.")
end if
end if
%>
<TD width="70%" align="left" valign="top">
<TABLE border="0" width="85%" align=center>
<TR>
<TD width="33%" align="left" nowrap><font face="<% Response.Write strDefaultFontFace %>" size="<% Response.Write strDefaultFontSize %>"><a href="default.asp"><img src="<% =strImageURL %>icon_folder_open.gif" alt="返回论坛首页" border="0"> <% =strForumTitle %></a>
<BR><img src="<%=strImageURL %>icon_bar.gif" border="0"><img src="<% =strImageURL %>icon_folder_open.gif" border="0"> <A href="admin_home.asp">论坛管理中心</A>
<BR><img src="<%=strImageURL %>icon_blank.gif" border="0"><img src="<%=strImageURL %>icon_bar.gif" border="0"><img src="<% =strImageURL %>icon_folder_open.gif" border="0"> <a href="admin_address_edit.asp">论坛IP管理中心</a>
<BR><img src="<%=strImageURL %>icon_blank.gif" border="0"><img src="<%=strImageURL %>icon_blank.gif" border="0"><img src="<%=strImageURL %>icon_bar.gif" border="0"><img src="<% =strImageURL %>icon_folder_open_topic.gif" border="0"> 添加IP记录信息
</FONT></TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<BR>
<%
strSQL = "SELECT C_STRIPProvince, C_STRIPDetail, C_STRIPStart, C_STRIPEnd"
strSQL = strSQL & " FROM " & strTablePrefix & "Address ORDER BY C_STRIPStart ASC"
set IpRS = my_Conn.Execute (strSQL)
IpAddrTotal = 0
IpCount = 0
m_sIPAddress = -1
strIPAddrHead_End_Prev = 0
strIPAddrHead_End_Now = 0
strIPAddrTail_End_Prev = 0
strIPAddrTail_End_Now = 0
IPAddrHeader_10 = 0
IPAddrHeader_61 = 0
IPAddrHeader_192 = 0
IPAddrHeader_202 = 0
IPAddrHeader_210 = 0
IPAddrHeader_other = 0
If IpRS.EOF or IpRS.BOF then
'没有任何IP记录
else
IpRS.MoveFirst
do until IpRS.EOF
IPStart = IpRS("C_STRIPStart")
IPEnd = IpRS("C_STRIPEnd")
sIPAddress = GetIPAddrFirst(IPStart)
select case sIPAddress
case 10
IPAddrHeader_10 = IPAddrHeader_10 + 1
case 61
IPAddrHeader_61 = IPAddrHeader_61 + 1
case 192
IPAddrHeader_192 = IPAddrHeader_192 + 1
case 202
IPAddrHeader_202 = IPAddrHeader_202 + 1
case 210
IPAddrHeader_210 = IPAddrHeader_210 + 1
case else
IPAddrHeader_other = IPAddrHeader_other + 1
end select
strIPAddrValue_Start = GetIPAddrValue(IPStart)
strIPAddrValue_End = GetIPAddrValue(IPEnd)
if IpAddrTotal = 0 then
strIPAddrHead_End_Prev = strIPAddrValue_Start
strIPAddrTail_End_Prev = strIPAddrValue_End
elseif IpAddrTotal = 1 then
strIPAddrHead_End_Now = strIPAddrValue_Start
strIPAddrTail_End_Now = strIPAddrValue_End
else
strIPAddrHead_End_Prev = strIPAddrHead_End_Now
strIPAddrHead_End_Now = strIPAddrValue_Start
strIPAddrTail_End_Prev = strIPAddrTail_End_Now
strIPAddrTail_End_Now = strIPAddrValue_End
end if
if m_sIPAddress = -1 then
m_sIPAddress = sIPAddress
IPAddr_other_Start_Head = strIPAddrValue_Start
IPAddr_other_Start_Tail = strIPAddrValue_End
else
if sIPAddress <> m_sIPAddress then
select case sIPAddress
case 10
IPAddr_10_Start_Head = strIPAddrValue_Start
IPAddr_10_Start_Tail = strIPAddrValue_End
case 61
IPAddr_61_Start_Head = strIPAddrValue_Start
IPAddr_61_Start_Tail = strIPAddrValue_End
case 192
IPAddr_192_Start_Head = strIPAddrValue_Start
IPAddr_192_Start_Tail = strIPAddrValue_End
case 202
IPAddr_202_Start_Head = strIPAddrValue_Start
IPAddr_202_Start_Tail = strIPAddrValue_End
case 210
IPAddr_210_Start_Head = strIPAddrValue_Start
IPAddr_210_Start_Tail = strIPAddrValue_End
case else
if sIPAddress > 210 then
IPAddr_other_End_Head = strIPAddrValue_Start
IPAddr_other_End_Tail = strIPAddrValue_End
end if
end select
select case m_sIPAddress
case 10
IPAddr_10_End_Head = strIPAddrHead_End_Prev
IPAddr_10_End_Tail = strIPAddrTail_End_Prev
case 61
IPAddr_61_End_Head = strIPAddrHead_End_Prev
IPAddr_61_End_Tail = strIPAddrTail_End_Prev
case 192
IPAddr_192_End_Head = strIPAddrHead_End_Prev
IPAddr_192_End_Tail = strIPAddrTail_End_Prev
case 202
IPAddr_202_End_Head = strIPAddrHead_End_Prev
IPAddr_202_End_Tail = strIPAddrTail_End_Prev
case 210
IPAddr_210_End_Head = strIPAddrHead_End_Prev
IPAddr_210_End_Tail = strIPAddrTail_End_Prev
'case else
end select
m_sIPAddress = sIPAddress
end if
end if
IpAddrTotal = IpAddrTotal + 1
IpRS.MoveNext
loop
End if
IpRS.close
Set IpRS = nothing
%>
<form method=POST action="admin_address_add.asp">
<div align=center>
<table bgcolor="<% =strTableBorderColor %>" cellpadding=2 border=0 cellspacing=1 width=400 align="center">
<tr>
<td bgcolor="<% =strHeadCellColor %>" width=400 align=center valign=top nowrap colspan="2">
<img src="" width =5 height=4><br>增添一条IP记录信息
</td>
</tr>
<tr>
<td bgcolor="<% =strForumCellColor %>" align=left valign=top nowrap width=110> IP起始地址:</td>
<td bgcolor="<% =strForumCellColor %>" align=left valign=top nowrap width=290> <input name=IPStart size=18> 例如: 192.168.0.1</td>
</tr>
<tr>
<td bgcolor="<% =strAltForumCellColor %>" align=left valign=top nowrap width=110> IP结束地址:</td>
<td bgcolor="<% =strAltForumCellColor %>" align=left valign=top nowrap width=290> <input name=IPEnd size=18> 例如: 192.168.0.255</td>
</tr>
<tr>
<td bgcolor="<% =strForumCellColor %>" align=left valign=top nowrap width=110> 国家(省份):</td>
<td bgcolor="<% =strForumCellColor %>" align=left valign=top nowrap width=290> <input name=Province size=18> 例如: 中国福建</td>
</tr>
<tr>
<td bgcolor="<% =strAltForumCellColor %>" align=left valign=top nowrap width=110> 城市(详细说明):</td>
<td bgcolor="<% =strAltForumCellColor %>" align=left valign=top nowrap width=290> <input name=City size=22> 例如: 福州地区</td>
</tr>
<tr>
<td bgcolor="<% =strForumCellColor %>" align=left valign=top nowrap width=400 colspan=2>
<input type=hidden name=mode value="add_ip"></td>
</tr>
<tr>
<td bgcolor="<% =strAltForumCellColor %>" align=center valign=top nowrap width=400 colspan=2>
<img src="" width =5 height=5><br><input type=submit name=submit value="添 加"> <input type=button name=cancel value="重 置"><br>
</td>
</tr>
</table>
</div>
</form>
<!--#INCLUDE file="inc_footer.asp" -->
<% else %>
<% Response.Redirect "admin_login.asp?Method=ip_edit" %>
<% end if %>
<%
function ChkIPString(fString)
' 检查IP字符串的正确性
if fString = "" then
' IP地址为空
ChkIPString = False
else
DotArray = Split(fString, ".")
if UBound(DotArray) <> 3 then
' 非法的IP
ChkIPString = False
else
For i = 0 to UBound(DotArray)
If Not IsNumeric(DotArray(i)) then
' 不是纯数字字符串
ChkIPString = False
exit function
end if
Next
' 正确的IP
ChkIPString = True
end if
end if
end function
function GetIPAddrLong(fString)
' 获得IP字符串的整型值
if fString = "" then
GetIPAddrLong = 0
else
DotArray = Split(fString, ".")
if UBound(DotArray) = 3 then
GetIPAddrLong = DotArray(3)*256*256*256 + DotArray(2)*256*256 + DotArray(1)*256 + DotArray(0) - 1
else
GetIPAddrLong = 0
end if
end if
end function
function GetLineColor(fLine)
' 获得显示行的背景颜色
if (fLine Mod 2) = 0 then
GetLineColor = strForumCellColor
else
GetLineColor = strAltForumCellColor
end if
end function
function GetIPAreaName(fLine)
' 获得IP段名
strSP =" "
select case fLine
case 0
GetIPAreaName = strSP & "以 <b>10</b> 起头的IP段"
case 1
GetIPAreaName = strSP & "以 <b>61</b> 起头的IP段"
case 2
GetIPAreaName = strSP & "以 <b>192</b> 起头的IP段"
case 3
GetIPAreaName = strSP & "以 <b>202</b> 起头的IP段"
case 4
GetIPAreaName = strSP & "以 <b>210</b> 起头的IP段"
case 5
GetIPAreaName = strSP & "<b>其他国家的</b> IP段"
case else
GetIPAreaName = strSP & "<font color=#ff000>未知IP段</font>"
end select
end function
function GetIPStartAddr_Head(fLine)
' 获得IP段首记录起始地址
select case fLine
case 0
GetIPStartAddr_Head = IPAddr_10_Start_Head
case 1
GetIPStartAddr_Head = IPAddr_61_Start_Head
case 2
GetIPStartAddr_Head = IPAddr_192_Start_Head
case 3
GetIPStartAddr_Head = IPAddr_202_Start_Head
case 4
GetIPStartAddr_Head = IPAddr_210_Start_Head
case 5
GetIPStartAddr_Head = IPAddr_other_Start_Head
case else
GetIPStartAddr_Head = "0.0.0.1"
end select
end function
function GetIPStartAddr_Tail(fLine)
' 获得IP段首记录结尾地址
select case fLine
case 0
GetIPStartAddr_Tail = IPAddr_10_Start_Tail
case 1
GetIPStartAddr_Tail = IPAddr_61_Start_Tail
case 2
GetIPStartAddr_Tail = IPAddr_192_Start_Tail
case 3
GetIPStartAddr_Tail = IPAddr_202_Start_Tail
case 4
GetIPStartAddr_Tail = IPAddr_210_Start_Tail
case 5
GetIPStartAddr_Tail = IPAddr_other_Start_Tail
case else
GetIPStartAddr_Tail = "0.0.0.1"
end select
end function
function GetIPEndAddr_Head(fLine)
' 获得IP段末记录起始地址
select case fLine
case 0
GetIPEndAddr_Head = IPAddr_10_End_Head
case 1
GetIPEndAddr_Head = IPAddr_61_End_Head
case 2
GetIPEndAddr_Head = IPAddr_192_End_Head
case 3
GetIPEndAddr_Head = IPAddr_202_End_Head
case 4
GetIPEndAddr_Head = IPAddr_210_End_Head
case 5
GetIPEndAddr_Head = IPAddr_other_End_Head
case else
GetIPEndAddr_Head = "255.255.255.255"
end select
end function
function GetIPEndAddr_Tail(fLine)
' 获得IP段末记录结尾地址
select case fLine
case 0
GetIPEndAddr_Tail = IPAddr_10_End_Tail
case 1
GetIPEndAddr_Tail = IPAddr_61_End_Tail
case 2
GetIPEndAddr_Tail = IPAddr_192_End_Tail
case 3
GetIPEndAddr_Tail = IPAddr_202_End_Tail
case 4
GetIPEndAddr_Tail = IPAddr_210_End_Tail
case 5
GetIPEndAddr_Tail = IPAddr_other_End_Tail
case else
GetIPEndAddr_Tail = "255.255.255.255"
end select
end function
function GetIPAddrCount(fLine)
' 获得IP地址段的记录数
select case fLine
case 0
GetIPAddrCount = IPAddrHeader_10
case 1
GetIPAddrCount = IPAddrHeader_61
case 2
GetIPAddrCount = IPAddrHeader_192
case 3
GetIPAddrCount = IPAddrHeader_202
case 4
GetIPAddrCount = IPAddrHeader_210
case 5
GetIPAddrCount = IPAddrHeader_other
case else
GetIPAddrCount = 0
end select
end function
function GetIPAreaComment(fLine)
' 获得IP段名
strSP =" "
select case fLine
case 0
GetIPAreaComment = strSP & "以前国内的169多媒体公众网的网段,已很少使用。"
case 1
GetIPAreaComment = strSP & "中国大陆新分配的IP段,数据有待完善。"
case 2
GetIPAreaComment = strSP & "这是内部网常用的IP段,局域网保留地址段。"
case 3
GetIPAreaComment = strSP & "国内最早使用的IP段,但不仅仅只是中国使用。"
case 4
GetIPAreaComment = strSP & "中国教育网、一些专线和网站使用的IP段。"
case 5
GetIPAreaComment = strSP & "其他国家的IP段,包括世界上大多数国家的IP。"
case else
GetIPAreaComment = strSP & "<font color=#ff000>未知IP段,没有详细说明。</font>"
end select
end function
function GetIPAddrFirst(fIPAddress)
' 获得IP地址的第一位
if fIPAddress = "" then
GetIPAddrFirst = 0
else
GetIPAddrFirst = Int(fIPAddress / &H1000000)
end if
end function
function GetIPAddrValue(fIPAddress)
' 获得IP地址的值
if fIPAddress = "" then
GetIPAddrValue = "0.0.0.0"
exit function
else
sIPAddrFirst = Int(fIPAddress / &H1000000)
tmpAddress = fIPAddress - sIPAddrFirst * &H1000000
sIPAddrLast = Int(tmpAddress Mod &H100)
tmpAddress = Int(tmpAddress / &H100)
sIPAddrThird = Int(tmpAddress Mod &H100)
tmpAddress = Int(tmpAddress / &H100)
sIPAddrSecond = Int(tmpAddress Mod &H100)
tmpAddress = Int(tmpAddress / &H100)
end if
GetIPAddrValue = CStr(sIPAddrFirst) & "." & CStr(sIPAddrSecond) & "." & CStr(sIPAddrThird) & "." & CStr(sIPAddrLast)
end function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -