#TITLE=Sintaxis y funciones comunes de ASP
#INFORMACIÓN
Algunas sintaxis y funciones personalizadas de uso común en ASP
#ORDENAR=n
#T= ===Sintaxis ASP común===
#T================================
#T=relacionado con la base de datos
#T= Conectarse a la base de datos ACCESS
<%
Dim DBName,Conn
DBName^! 'Definir ruta y nombre de la base de datos
SET Conexión = Servidor.CrearObjeto(ADODB.Conexión)
Conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Fuente de datos= & Server.MapPath(DBName)
%>
#T= Conectarse a la base de datos MS SQL
<%
Dim Conn
SET Conexión=Servidor.CrearObjeto(ADODB.conexión)
Conn.Open PROVIDER=SQLOLEDB;DATA SOURCE=nombre del servidor SQL o dirección IP;UID=cuenta de inicio de sesión de la base de datos;PWD=contraseña de la base de datos;DATABASE=nombre de la base de datos
%>
#T= Crear conjunto de registros
CONJUNTO ^!=Servidor.CreateObject(ADODB.recordset)
#T= Ejecutar comando SQL
RS.Abrir SQL,conn,1,1
#T= Ejecutar comando SQL
Conexión.Ejecutar(^!)
#T= RS ejecuta directamente comandos SQL
SET RS = Conexión.Ejecutar(^!)
#T= Cerrar el conjunto de registros
RS.CERRAR
ESTABLECER RS=NADA
#T= Cerrar base de datos
Conexión.Cerrar
SETConn=Nada
#T================================
#T=Variables de servidor relacionadas
#T= Obtener la dirección de la página anterior
Solicitud.Variables del servidor (HTTP_REFERER)
#T= Obtener el nombre del servidor 1
Solicitud.Variables del servidor(SERVER_NAME)
#T= Obtener el nombre del servidor 2
Solicitud.Variables del servidor (HTTP_HOST)
#T= Obtener IP del servidor
Solicitud.Variables del servidor(LOCAL_ADDR)
#T= Obtener IP de usuario
Solicitud.ServerVariables(Remote_Host)
#T= Obtener la IP1 real del usuario
Solicitud.variablesdelservidor(REMOTE_ADDR)
#T= Obtener la función IP real del usuario
Función GetRealIP()
GetRealIP = Solicitud.ServerVariables(HTTP_X_FORWARDED_FOR)
IF(GetRealIP =) ENTONCES GetRealIP = Solicitud.ServerVariables(REMOTE_ADDR)
Función final
#T= Obtener puerto del servidor
Solicitud.Variables del servidor(SERVER_PORT)
#T= Obtener el sistema operativo del servidor
Solicitud.Variables del servidor (SO)
#T= Obtener la ruta absoluta del servidor
Solicitud.Variables del servidor(APPL_PHYSICAL_PATH)
#T= Obtener la ruta absoluta de este archivo 1
Solicitud.ServerVariables(PATH_TRANSLATED)
#T= Obtener la ruta absoluta de este archivo 2
Servidor.mappath(Solicitud.ServerVariables(SCRIPT_NAME))
#T= Obtener la ruta relativa de este archivo 1
Solicitud.Variables del servidor(URL)
#T= Obtener la ruta relativa de este archivo 2
Solicitud.Variables del servidor(SCRIPT_NAME)
#T= Obtener la ruta relativa de este archivo 3
Solicitud.Variables del servidor(PATH_INFO)
#T= Obtener los parámetros después de la barra de direcciones
Solicitud.Variables del servidor(QUERY_STRING)
#T= Obtener información del sistema del servidor
Solicitud.Variables del servidor (HTTP_USER_AGENT)
#T= Detección de componentes del servidor
<%
Función IsObjInstalled(strClassString)
En caso de error Continuar siguiente
IsObjInstalled = Falso
Error = 0
DimxTestObj
SET xTestObj = Servidor.CreateObject(strClassString)
SI (0 = Err) ENTONCES IsObjInstalled = Verdadero
SET xTestObj = Nada
Error = 0
Función final
'SI(IsObjInstalled(Persits.Upload)=Verdadero)ENTONCES
' Response.Write admite el componente AspUpload
'DEMÁS
' Response.Write no soporta el componente AspUpload
'TERMINAR SI
%>
#T= Obtener la configuración regional del cliente
^!Solicitud.Variables del servidor(HTTP_ACCEPT_LANGUAGE)
#T= Obtener información del cliente: HTTP_USER_AGENT
^!Solicitud.Variables del servidor(HTTP_USER_AGENT)
#T= Obtener el valor del elemento de valor del formulario (Formulario)
Solicitud.Formulario(^!)
#T= Obtener el valor pasado por la URL
Solicitud.QueryString(^!)
#T= Obtener la dirección URL completa
Función ObtenerUrl()
GetUrl=http://&Request.ServerVariables(SERVER_N ... .ServerVariables(URL)
IF(Request.ServerVariables(QUERY_STRING)<>)THEN GetURL=GetUrl&?& Request.ServerVariables(QUERY_STRING)
Función final
#T================================
#T=función personalizada
#T= Filtrar caracteres HTML
<%
'Función de filtrado de caracteres HTML
Función HTMLEncode(cadena)
SI (cadena <>) ENTONCES
cadena = Reemplazar (cadena, &, &)
cadena = Reemplazar (cadena, >, >)
cadena = Reemplazar (cadena, <, <)
cadena = Reemplazar (cadena, Chr(32),)
cadena = Reemplazar (cadena, Chr(9),)
cadena = Reemplazar (cadena, Chr(34),)
cadena = Reemplazar (cadena, Chr(39), ')
cadena = Reemplazar (cadena, Chr(13),)
str = Reemplazar(str, Chr(10) & Chr(10), </P><P>)
cadena = Reemplazar (cadena, Chr(10), <BR>)
cadena = Reemplazar (cadena, Chr(255),)
FINALIZAR SI
HTMLEncode = cadena
Función final
%>
#T= Compruebe si la página anterior fue enviada desde este sitio
<%
'Compruebe si la página anterior fue enviada desde este sitio
'Retorno: Verdadero, Falso
'=================================================== ================
Función EsSelfRefer()
Dim sHttp_Referer, sServer_Name
sHttp_Referer = CStr(Request.ServerVariables(HTTP_REFERER))
sServer_Name = CStr(Solicitud.ServerVariables(SERVER_NAME))
IF(Mid(sHttp_Referer, 8, Len(sServer_Name)) = sServer_Name)ENTONCES
IsSelfRefer = Verdadero
DEMÁS
IsSelfRefer = Falso
FINALIZAR SI
Función final
%>
#T= Borrar todas las etiquetas HTML
<%
'Borrar etiquetas HTML
Tira de funcionesHTML(htmlStr)
expresión regular tenue
SETregEx = NuevaRegexp
regEx.IgnoreCase = Verdadero
regEx.Global = Verdadero
regEx.Patrón = <.+?>
htmlStr = regEx.Replace(htmlStr,)
htmlStr = Reemplazar(htmlStr, <,<)
htmlStr = Reemplazar (htmlStr, >,>)
htmlStr = Reemplazar(htmlStr,chr(10),)
htmlStr = Reemplazar(htmlStr,chr(13),)
tiraHTML = htmlStr
SET expresión regular = Nada
Función final
%>
#T= Obtener la longitud de la cadena
<%
'Función para encontrar la longitud de una cadena
Función ObtenerLongitud(cadena)
Longitud tenue
Para i=1 a Len(cadena)
SI(Asc(Mid(str,i,1))<0 o Asc(Mid(str,i,1))>256)ENTONCES
Longitud=Longitud+2
DEMÁS
Longitud=Longitud+1
FINALIZAR SI
Próximo
ObtenerLongitud=Longitud
Función final
%>
#T= intercepta la cadena de longitud especificada
<%
'Intercepta una cadena de longitud especificada, reemplaza el exceso con...
Función StrLeft(cadena,stren)
SI (cadena =) ENTONCES
StrIzquierda =
Función de salida
FINALIZAR SI
tenue l,t,c,i
str = Reemplazar(Reemplazar(Reemplazar(Reemplazar(cadena, , ),,chr(34)),>,>),<,<)
l=len(cadena)
t=0
Para i=1 a l
c=Abs(Asc(Medio(str,i,1)))
SI(c>255)ENTONCES
t=t+2
DEMÁS
t=t+1
FINALIZAR SI
SI(t>stren)ENTONCES
StrLeft = izquierda(cadena,i) & ...
Salir por
DEMÁS
StrIzquierda = cadena
FINALIZAR SI
Próximo
StrLeft = Reemplazar(Reemplazar(Reemplazar(Reemplazar(StrLeft, , ),chr(34),),>,>),<,<)
Función final
%>
#T= Obtener parámetros de envío seguros
<%
'=================================================== ================
'Comprobación de inyección SQL
'Función de función: filtrar comillas simples en parámetros de caracteres, juzgar parámetros numéricos y asignar un valor de 0 si no es un tipo numérico
'Significado del parámetro: str ---- parámetros a filtrar
'strType ---- tipo de parámetro, dividido en tipo de carácter y tipo numérico, el tipo de carácter es s, el tipo numérico es i
'=================================================== ================
Función CheckStr(cadena,tipocadena)
strTmp tenue
strTmp =
SI(strType =s)ENTONCES
strTmp = Reemplazar(Recortar(cadena),','')
ELSEIF(strType=i)ENTONCES
SI(IsNumeric(str)=False)ENTONCES str=False
strTmp = cadena
DEMÁS
strTmp = cadena
Fin SI
CheckStr= strTmp
Función final
%>
#T= Filtrar caracteres malos (BadWord)
<%
'Filtrar caracteres malos (BadWords)
Función ChkBadWords(fString)
Dim BadWords,bwords,i
Malas palabras = Joder|jódete|jódete con él|jódete|joder|perro|bastardo|coño|polla|bastardo|violación|hacer el amor|virgen|zemin|falun|falun|hongzhi|falun
SI(No(EsNull(BadWords) o IsNull(fString)))ENTONCES
bpalabras = Dividir(PalabrasMalas, |)
Para i = 0 a UBound(bwords)
fString = Reemplazar(fString, bpalabras(i), cadena(Len(bpalabras(i)),*))
Próximo
ChkBadWords = fString
FINALIZAR SI
Función final
%>
#T= Generar contraseña de longitud personalizada aleatoria
<%
'Generar una contraseña de longitud personalizada aleatoria
Función crear contraseña (maxLen)
Dim strNewPass
Atenuar whatsNext, superior, inferior, intCounter
Aleatorizar
Para intCounter = 1 a maxLen
cuál es el siguiente = Int((1 - 0 + 1) * Rnd + 0)
SI (qué sigue = 0) ENTONCES
'personaje
superior=90
inferior=65
DEMÁS
superior=57
inferior = 48
FINALIZAR SI
strNewPass = strNewPass & Chr(Int((superior - inferior + 1) * Rnd + inferior))
Próximo
hacerContraseña = strNuevaPass
Función final
'Respuesta.Escribe makepassword(8)
%>
#T= Mantener el formato en HTML al completar el área de texto
<%
'=================================================== ================
'Eliminar el formato HTML, utilizado al recuperar valores de la base de datos y completar el cuadro de entrada
'Nota: valor=? debe utilizar comillas dobles aquí
'=================================================== ================
Función en HTML(str)
Temperatura tenue
sTemp = cadena
en HTML =
Si IsNull(sTemp) = Verdadero Entonces
Función de salida
Terminar si
sTemp = Reemplazar (sTemp, &, &)
sTemp = Reemplazar(sTemp, <br>,chr(13))
sTemp = Reemplazar(sTemp, <, <)
sTemp = Reemplazar(sTemp, >, >)
sTemp = Reemplazar(sTemp, , Chr(34))
enHTML = sTemp
Función final
%>
#T= Función de verificación de expresión de tabla regular
<%
'Función de verificación de expresión regular patrón-cadena-cadena de expresión regular que necesita ser verificada
'=================================================== ================
Función RegExpTest(patrón, cadena)
Dim regEx, retVal 'Crear variables.
SET regEx = New RegExp ' Crea una expresión regular.
regEx.Pattern = patrón ' Establecer patrón.
regEx.IgnoreCase = False 'Establece si se distingue entre mayúsculas y minúsculas.
retVal = regEx.Test(string) 'Ejecutar prueba de búsqueda.
RegExpTest = retVal 'Valor de retorno, si no coincide, devuelve falso, si coincide, devuelve verdadero
ESTABLECER expresiones regulares = NADA
Función final
%>
#T= Generar cadena aleatoria
<%
'Generar una cadena aleatoria
FunciónRndCode()
Conjunto de códigos tenues, conjunto de cantidades
Conjunto de códigos = 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
MontoSet = 62 'Cantidad de texto
Aleatorizar
Atenuar vCode(10), vCodes,i
Para i = 0 a 9
Códigov(i) = Int(Rnd * ConjuntoDeMonto)
Códigos virtuales = Códigos virtuales y medio (Conjunto de códigos, Código virtual (i) + 1, 1)
Próximo
RndCode=códigos virtuales
Función final
%>
#T================================
#T=Operaciones relacionadas con FSO
#T= Determinar si el directorio existe
<%
Función IsFloderExist(strFolderName)
SET FSO=Servidor.CreateObject(Scripting.FileSystemObject)
IF(FSO.FolderExists(strFolderName))ENTONCES
IsFloderExist = Verdadero
DEMÁS
IsFloderExist = Falso
FINALIZAR SI
ESTABLECER FSO=NADA
Función final
%>
#T= Crear directorio
<%
Función CrearCarpeta(strFolderName)
SET FSO=Servidor.CreateObject(Scripting.FileSystemObject)
IF(FSO.FolderExists(strFolderName) = False)ENTONCES
FSO.CreateFolder(strFolderName)
FINALIZAR SI
ESTABLECER FSO=NADA
Función FINAL
%>
#T= Eliminar directorio
<%
Función EliminarCarpeta(strFolderName)
SET FSO=Servidor.CreateObject(Scripting.FileSystemObject)
IF(FSO.FolderExists(strFolderName))ENTONCES
FSO.DeleteFolder(strFolderName)
FINALIZAR SI
ESTABLECER FSO=NADA
Función FINAL
%>
#T= Determinar si el archivo existe
<%
Función IsFileExist(strFileName)
SET FSO=Servidor.CreateObject(Scripting.FileSystemObject)
IF(FSO.FileExists(strFileName))ENTONCES
IsFileExist = Verdadero
DEMÁS
IsFileExist = Falso
FINALIZAR SI
ESTABLECER FSO=NADA
Función final
%>
#T= eliminar archivo
<%
Función EliminarArchivo(strFileName)
SET FSO=Servidor.CreateObject(Scripting.FileSystemObject)
IF(FSO.FileExists(strFileName))ENTONCES
FSO.DeleteFile(strFileName)
FINALIZAR SI
ESTABLECER FSO=NADA
Función FINAL
%>
#T================================
#T= Varias funciones comúnmente utilizadas por los ladrones de ASP
<%
Función ByteToStr(vIn)
Dim strReturn,i,ThisCharCode,innerCode,Hight8,Low8,NextCharCode
strRetorno =
Para i = 1 a LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
SI (Este código de carácter < & H80) ENTONCES
strReturn = strReturn & Chr(ThisCharCode)
DEMÁS
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
yo = yo + 1
FINALIZAR SI
Próximo
ByteToStr = strReturn
Función final
Función GetHttpPageContent(url,Método,SendStr)
Recuperación tenue
Recuperación SET = Server.CreateObject(Microsoft.XMLHTTP)
Con recuperación
.Método abierto, URL, Falso, ,
.setRequestHeader Tipo de contenido, aplicación/x-www-form-urlencoded
.Enviar(EnviarStr)
GetHttpPageContent = .ResponseBody
Terminar con
Recuperación SET = Nada
GetHttpPageContent=ByteToStr(GetHttpPageContent)
Función final
Función RegExpText(cadena,regStr)
Dim regEx, Match, Matches, RetStr
SET regExp = Nueva expresión regular
regEx.Patrón = regStr
regEx.IgnoreCase = Verdadero
regEx.Global = Verdadero
SET Coincidencias = regEx.Execute(string)
Para cada partido en partidos
RetStr = RetStr & regEx.Replace(Match.Value,$1) & ,
Próximo
RegExpText = RetStr
establecer expresiones regulares = nada
Función final
Función StreamBytesToBstr(strBody, CodeBase)
Dim objStream
SET objStream = Servidor.CreateObject(Adodb.Stream)
Con objStream
.Tipo = 1
.Modo = 3
.Abierto
.Escribir strBody
.Posición = 0
.Tipo = 2
.Charset = CódigoBase
StreamBytesToBstr = .ReadText
.Cerca
Terminar con
SET objStream = Nada
Función final
%>