<%@Idioma = VBScript CodePage = 936%>
<html>
<Evista>
<title> Documento sin título </title>
<meta http-equiviv = content-type content = text/html;
</ablo>
<Body>
<%
Dim Finegetip, Showip, Allip
'////////////////////////////////////////////// /////////////////// gestingead /////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// /// gons
'El programa no está muy simplificado y luego lo modifica más tarde
'La base de datos utilizada en este programa es- "Feng Zhihong" -Written- "Hunting" -La IP Base de datos y
El autor de "Guohua Software Guohua Soft"-"Feng Guohua"-la "tabla de asignación de direcciones IP global.Chm" escrita por.
"Gracias a los datos proporcionados por" Feng Zhihong "y" Feng Guohua "
'Todavía hay muchas direcciones IP duplicadas en la base de datos.
'Mi programa es muy torpe.
'////////////////////////////////////////////// /////////////////// gestingead /////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// /// gons
'Solución:
'La IP del cliente obtenida es generalmente 202.11.25.1, y el formato IP en la base de datos es 202.011.025.001, que debe obtenerse
'El cliente IP se convierte en el mismo formato que la IP en la base de datos
"Debido a que la IP que usamos actualmente se divide en 4 secciones, cada sección de 3 lugares, y el medio está separado por" ".
"Entonces mi idea es dividir la IP del cliente en 4 párrafos de". ", Es decir, 202/11/25/1
'Luego verifique cada párrafo por separado, si son 3 dígitos, no cambiará;
'Después de obtener el formato IP, se elimina la última sección de la IP, es decir, los 11 bits principales que incluyen ". valor
'Debido a que se puede ver desde la base de datos, los tres primeros párrafos de Startip y Endip son los mismos, y el último párrafo es solo la dirección de subred interna, que se puede eliminar
'Entonces, siempre que tome el top 11 de cualquier campo de startip o endip, en comparación con el top 11 de la IP del cliente, puede encontrar la ubicación correcta
'////////////////////////////////////////////// /////////////////// gestingead /////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// ///////// Gestman
Función checkip_trueip ()
'Tome la IP real del cliente
getClientip = request.ServerVariables (http_x_forwarded_for) 'Si el cliente usa el servidor proxy, use el método request.servervariAbles (remoto_addr).
Si getClientip = entonces
GetClientip = Equest.SerVerVariAns (remota_addr) 'Si el cliente no usa el agente, entonces request.ServerVariAns (http_x_forwardedded_for) es un valor vacío.
final si
checkip_trueip = getClientip
función final
'////////////////////////////////////////////// /////////////////// gestingead /////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// ////////////////////// ggig
Function getAcCessRecordSet (DB, SQL, Mark, Read) 'Obtenga el objeto de registro
Establecer conn = getAccessconn (db) 'El parámetro de entrada es la ruta relativa de DB-Database, SQL-SQL Declary, Mark, Read es un método de lectura de base de datos, 1,1 se lee y escribe
'Constr = Provider = Microsoft.Jet.OLEDB.4.0;
'Conn.open construye
Establezca getAccessRecordSet = server.CreateObject (ADODB.Oldset)
GetAccessRecordSet.open SQL, Conn, Mark, Leer
función final
'////////////////////////////////////////////// ////////////////// gestingead ///////////////////////
Función getAccessConn (db) '' Obtenga el objeto de conexión
Establecer getAccessConn = server.CreateObject (ADODB.Connection)
'Constr = Driver = {Microsoft Access Driver (*.mdb)};
Constr = Provider = Microsoft.Jet.OLEDB.4.0;
getAccessconn.open construye
función final
'////////////////////////////////////////////// ////////////////// gestingead //////////////////////
Dim Getip
'Getip = (trim (request.serverVariables (remotos_addr))') 'Obtenga IP del cliente
'Getip = (trim (request.querystring (viene))') 'Ingrese la prueba de IP por mí mismo
'Response.Write (Getip & <br>)
'////////////////////////////////////////////// ////////////////// gestingead /////////////////////
Función checkip_locations (checkstring) 'Regreso a la función de posición del carácter separado en la IP
Checkip_locations = instr (checkstring,.) 'Para dar funciones a la función
función final
'////////////////////////////////////////////// ////////////////// gestingead ///////////////////
'Las siguientes funciones son la IP de la División, y la cadena restante de IP de la IP a la derecha después de que se obtenga cada segmentación
Función checkip_left (checkstring)
Lugars_left = checkip_locations (checkstring) 'para obtener el primer lugar donde apareció el primero en la cadena restante de la IP
iplength_left = len (checkstring) 'Obtenga la longitud de la cadena restante de la IP
Divide_locations_left = iplength_left-locations_left 'para obtener la posición de ".
IPStr_left = Right (checkString, divide_locations_left) 'Después de obtener esta división, la cadena restante de la IP permanece a la derecha del "."
Checkip_left = iPstr_left 'dará la cadena obtenida anteriormente a la función
función final
'////////////////////////////////////////////// ////////////////// gestingead ///////////////////
"Las siguientes funciones están divididas IP y la cadena IP en el lado izquierdo del".
Función checkip_right (checkstring)
Locations_right = checkip_locations (checkstring) 'obtenido en la IP "."
iplength_right = len (checkstring) 'Obtenga la longitud de la cadena IP
Divide_locations_right = iPlength_right-locations_right 'para obtener la posición de ".
IPSTR11 = TRIM (Reft (izquierda (checkstring, local),.,.,) ')') ') La cadena izquierda se eliminará.
'Si la IP se divide en 4 párrafos, cada sección es inferior a 3 dígitos y 0
Si Len (iPSTR11) = 2 entonces IPSTR11 = 0 e IPSTR11
Si Len (iPSTR11) = 3 entonces iPSTR11 = iPSTR11
Si Len (iPSTR11) = 1 entonces IPSTR11 = 00 e IPSTR11
Checkip_right = IPSTR11 'Obtenga la cadena antes del ".".
Functi final
¡El centro de demostración de la estación fría más grande de China!