ASP to write a complete revision of the IP location search class
Fixed the Query method, the query method and the pursuit of the same; just chasing will automatically correct IP.
There is also a function of the writing error, has also been corrected;
Includes a validation function that adds the correctness of an IP address. (Just judging from the format)
<%
Server.ScriptTimeout = &he10 ' &h3c
Response.Buffer = ("s.f." = "s.f.")
Dim Ipsearch
' Set up objects
Set Ipsearch = New Clsipsearch
' This sentence establishes a connection to the IP address library of SQL Server that can use the default connection, but is guaranteed to exist Wry.mdb
ipsearch.connectionstring = "Driver={sql Server}"; Server=hostname:uid=sa; pwd=;D Atabase=ip "
' Set the IP that you want to query for, the default value, set here is 127.0.0.1
ipsearch.ipaddress = &h7f & ". & &h00 &". "& &h00 &". "& &h01
If request.querystring ("IP") <> "Then
If ipsearch.valid_ip (Request.QueryString ("IP")) Then
ipsearch.ipaddress = Trim (Request.QueryString ("IP"))
End If
End If
' Gets the IP location, the feedback value is three, separated by commas
' The format is: the country or region, the local area of the Internet, provide the correct IP address information of the user name
Response.Write ("Location:" & Ipsearch.getipaddrinfo () & "<br>")
' Remove IP Address
Response.Write ("IP:" & ipsearch.ipaddress & "<br>")
' Converts an IP address to a numeric value
Response.Write ("IP conversion to numeric value:" & Ipsearch.clongip (ipsearch.ipaddress) & "<br>")
' Convert IP address to numeric value and revert to IP string
Response.Write ("Numeric revert to IP:" & Ipsearch.cstringip (IPSEARCH.CLONGIP (ipsearch.ipaddress)) & "<br>")
Response.Write ("
' Here is the test code
' Dim a,b,c,d
' For a = 0 to 255
' For b= 0-255 Step 20
' For c=0 to 255 step 20
' For d = 0-255 Step 20
' ipsearch.ipaddress = A & '. "& B &". "& C &". "& D
' Response.Write ("Location:" & Ipsearch.getipaddrinfo () & "<br>")
' Response.Write ("IP:" & ipsearch.ipaddress & "<br>")
' Response.Write (IP conversion to numeric value: "& Ipsearch.clongip (ipsearch.ipaddress) &" <br> ")
' Response.Write ("Numeric revert to IP:" & Ipsearch.cstringip (IPSEARCH.CLONGIP (ipsearch.ipaddress)) & "<br>")
' Response.Write ("' Next
' Next
' Next
' Next
%>
<%
Class Clsipsearch
'##################################################################
' Disclaimer: This procedure uses the data for the network's famous IP tool software "Chase" author "Feng Zhihong"
Mr. ' meticulously collected and collated.
The conversion method of the "Hunt" database:
' Modify wry.dll file suffix name to wry.dbf
' Method One:
' Start Access data, select Open Database, and choose Open File Type ' DBASE 5 (*.dbf) '
' Open the Wry.dbf file and select the transform database in the Database utility under the Tools menu
' Select the Convert to Access 97 format (version optional) feature to save the file as an MDB format.
' Method Two:
' Use the Import and Export Data Wizard provided by SQL Server.
' Method Brief Description: Set the DSN pointing to wry.dbf in the ODBC Control Panel.
' Using the Import and Export Data Wizard, select the correct driver and the library you want to import.
' or import the MDB file generated by method one directly into the library.
' Method Three:
' Using access to open the Wry.dbf file automatically references the original library data through the MDB library.
'
' No other database platforms are installed, other methods are not considered.
' ###################### class Description ####################################
' # IP Location search class
' # ConnectionString for the database connection declaration, the default declaration of the sibling directory Wry.mdb
' # ipaddress Please set the IP address for the search, by default take the current visitor IP
' # class Building method
' # Dim Objval ' declares a variable
' # Set objval = New Clsipsearch ' Create class object
' # Response.Write (objval.ipaddress) ' Displays current visitor IP
' # IP Search class method list:
'# . Valid_ip ' IP address correctness
' # parameter: IP ' IP value or string
'# . Clongip ' converts an IP address to a value of a long integer
' # parameter: Asnewip ' the IP address string to convert
'# . Cstringip ' Converts the value of a long integer to IP
' # parameter: Annewip ' value to revert to IP address
'# . Getclientip ' Fetch the IP of the visitor
'# . Getipaddrinfo ' Gets the IP location where the IPAddress attribute is set
' # List of attributes (automatically initialized):
' # ConnEctionString ' ADo Access database connection description
' # ipaddress ' IP address to operate
' # INTERNAL error handling:
' # Missing, not done, please add yourself.
'##################################################################
Public ConnectionString
Public IPAddress
Private dbconn ' Connection object, module-level declaration
' ────────────────────────────────
' Class initialization
Private Sub Class_Initialize ()
' Here is the MDB library file generated through data conversion--method one.
connectionstring= "Driver={microsoft Access DRIVER (*.mdb)};D bq=" & Server.MapPath ("Wry.mdb")
IPAddress = Getclientip ()
Set dbconn = OpenConnection ()
End Sub
' ────────────────────────────────
' Class logoff
Private Sub Class_Terminate ()
ConnectionString = Null
IPAddress = Null
Dbconn.close
Set dbconn = Nothing
End Sub
' ────────────────────────────────
' Establish a connection
Private Function OpenConnection ()
Dim Tmpconn
Set tmpconn=server.createobject ("ADODB. Connection ")
Tmpconn.open ConnectionString
Set Openconnection=tmpconn
Set TMPC