Recientemente, me obsesioné con la creación de sitios web. Utilicé ASP para desarrollar y descubrí que ASP tiene muchas lagunas y hay muchos códigos que se reutilizan en un sitio web, así que verifiqué cierta información y descubrí que la idea de. Las clases se pueden usar en ASP, así que escribí esta clase. No está bien escrita, pero es bastante práctica.
<meta http-equiv="Tipo de contenido" content="text/html; charset=gb2312">
<%
Const Btn_First="<font face='webdings'>9</font>" 'Definir el estilo de visualización del botón de la primera página
Const Btn_Prev="<font face='webdings'>3</font>" 'Define el estilo de visualización del botón de la página anterior
Const Btn_Next="<font face='webdings'>4</font>" 'Define el estilo de visualización del botón de la página siguiente
Const Btn_Last="<font face='webdings'>:</font>" 'Define el estilo de visualización del botón de la última página
Clase clsDSJ
Privado p_Error,p_IpAdd,p_Debug,Errs
Privado p_InvaildWords
tmpStr privado
ObjConnDivPage privado,rsDivPage,p_GetSQL,p_nPage
Privado p_rsPageSize,p_intCurPage,p_strURL,p_intTotalPage,p_intTotalRecords
Privado p_dbType,p_dbFolder,p_DataBase,dbPath,p_dbUserID,p_dbPassword,p_sqlDataSource
Privado param_DataBase,param_dbUserID,param_dbPassword,param_dbType
'Propiedad
ObjConn público,ConnStr,SQLQueryNum
Registro públicoDB, WebURL
Guardar registro público
Códigos de error públicos, Código de error, Mensaje de error
Carpeta de script pública, nombre de script
Subclase privada_Inicializar
p_Debug=Verdadero
ClienteConectado
Guardar registro=Verdadero
ErrMsg=""
p_Error=0
NúmConsulta SQL=0
Inicialización de la conexión de la base de datos Rem
dbType=12 'Tome 1x——Acceso, 2x——SQL x1——OLEDB, x2——ODBC;
dbFolder="Datos"
Base de datos="zhubizidatabase.MDB"
dbUserID=""
dbContraseña=""
sqlDataSource=""
p_rsPageSize=10
'p_nPágina=2
Si solicitud("página")="" Entonces
p_intCurPage=1
De lo contrario, si NO es numérico (solicitud ("página")), entonces
p_intCurPage=1
ElseIf CInt(Trim(solicitud("página")))<1 Entonces
p_intCurPage=1
Demás
p_intCurPage=CInt(Recortar(solicitud("página")))
Terminar si
WebURL=" http://blog.csdn.net/alonesword/ "
tmpStr=Request.ServerVariables("PATH_INFO")
tmpStr=Dividir(tmpStr,"/",-1)
ScriptName=Lcase(tmpStr(UBound(tmpStr)))
ScriptFolder=LCase(tmpStr(UBound(tmpStr)-1)) & "/"
p_InvaildWords=" seleccionar|actualizar|eliminar|insertar|@|--|;|'|#|%|xp|cmd|shell "
Subtítulo final
Subclase privada_terminar()
Si IsObject(rsDivPage) Entonces rsDivPage.Close:Establecer rsDivPage=Nada
Si IsObject(objConn) Entonces objConn.Close:Establecer objConn=Nada
Fin de
propiedad subpública Obtener versión
Versión="DSJ 1.1.0 Beta"
Propiedad final
Error de obtención de propiedad pública
Error=p_Error
Propiedad final
Propiedad pública obtener depuración
Depurar=p_Debug
Propiedad final
Propiedad pública Let Debug (BoolDebug)
Si BoolDebug entonces
p_Debug=Verdadero
Demás
p_Debug=Falso
Terminar si
Propiedad final
Propiedad pública Obtener dbType
dbType=p_dbType
Propiedad final
Propiedad pública Let dbType(lngdbType)
Si es numérico (tipo lngdb) entonces
p_dbType=tipolngdb
Demás
p_dbType=12
Terminar si
Propiedad final
Propiedad pública Obtener dbFolder
dbFolder=p_dbCarpeta
Propiedad final
Propiedad pública Let dbFolder(strFolder)
Si es Derecha(strFolder,1)="" O Derecha(strFolder,1)="/" Entonces
p_dbFolder=strCarpeta
Demás
Si (NO es nulo (strFolder)) O (strFolder<>"") Entonces
p_dbFolder=strFolder & ""
Demás
p_dbFoler=""
Terminar si
Terminar si
Propiedad final
Propiedad pública Obtener base de datos
Base de datos=p_dataBase
Propiedad final
Base de datos de permisos de propiedad pública (strDataBase)
p_dataBase=strBase de datos
Propiedad final
Propiedad pública Obtener dbUserID
dbUserID=p_dbUserID
Propiedad final
Propiedad pública Let dbUserID(strDataBaseUserID)
p_dbUserID=strDataBaseUserID
Propiedad final
Propiedad pública Obtener dbPassword
dbContraseña=p_dbContraseña
Propiedad final
Propiedad pública Let dbPassword(strDataBasePassword)
p_dbPassword=strDataBaseContraseña
Propiedad final
Propiedad pública Obtener SQLDataSource
SQLDataSource=p_sqlDataSource
Propiedad final
Propiedad pública Let SQLDataSource(strSQLDataSource)
Si strsqlDataSource<>"" Entonces
Si izquierda (p_dbType, 1) = 2 entonces
p_sqlDataSource=strSQLDataSource
Demás
Agregar código de error (110)
p_sqlDataSource=""
Terminar si
Terminar si
Propiedad final
Propiedad pública Let PageSize(int_PageSize)
Si es numérico (Int_Pagesize) entonces
p_rsPageSize=CLng(int_PageSize)
Terminar si
Propiedad final
Propiedad pública Obtener tamaño de página
Si p_rsPageSize="" o NO esNumeric(p_rsPageSize) Entonces
Tamaño de página=8
Demás
Tamaño de página=p_rsTamaño de página
Terminar si
Propiedad final
Propiedad pública Obtener GetRs()
Si NO depura, en caso de error, reanude a continuación
Si NO es Objeto (objConn), entonces ConnectionDataBase dbDataBase, dbUserID, dbPassword, dbType
Si NO es IsObject (rsDivPage) entonces
Establecer rsDivPage=Server.createobject("adodb.recordset")
rsDivPage.Abrir GetSQL,objConn,1,1
rsDivPage.PageSize=Tamaño de página
Si no (rsDivPage.eof y rsDivPage.BOF) entonces
Si p_intCurPage>rsDivPage.PageCount Entonces
p_intCurPage=rsDivPage.PageCount
Terminar si
rsDivPage.AbsolutePage=p_intCurPage
Terminar si
Si se equivoca entonces
Err.Borrar
rsDivPage.Cerrar
Establecer rsDivPage=Nada
Si guardar registro entonces
tmpMsg="Error al conectarse a la base de datos, verifique si su código de consulta es correcto.<br>Por razones de seguridad, solo se muestra este mensaje. Para ver mensajes de error detallados, configure dsj.Debug=True"
Respuesta.Escribir SaveSQLLog(cmd,tmpMsg)
Demás
Response.Write "Error al conectarse a la base de datos, verifique si su código de consulta es correcto".
Terminar si
Respuesta.Fin()
Terminar si
NúmConsulta SQL=NúmConsulta SQL+1
Establecer GetRs=rsDivPage
Terminar si
Propiedad final
Propiedad pública Let GetSQL(str_sql)
Si str_sql<>"" Entonces
p_GetSQL=str_sql
Demás
Agregar código de error (111)
Si se depura, entonces ShowErrMsg()
p_GetSQL="La propiedad de GetSQL es NULL."
Terminar si
Propiedad final
Propiedad pública Obtener GetSQl()
ObtenerSQL=p_GetSQL
Propiedad final
'******************************
'Nombre: gotTopic
'Parámetros: str, strlen
'Valor de retorno: cadena restringida
'Tiempo de creación: 3 de marzo de 2005
'Función: limitar la cadena restringida
'******************************
Función pública GotToPic(str,strlen)
Rem limita la longitud de visualización de la cadena a un cierto rango
Dim i,StringLen,CharSize,EchoCharType
StringLen=len(cadena)
Tamaño de caracteres=0
Para i=1 a StringLen
EchoCharType=Abs(Asc(Medio(str,i,1)))
Si EchoCharType>255 entonces
Tamañocarácter=Tamañocarácter+2
Demás
Tamañocarácter=Tamañocarácter+1
Terminar si
Si CharSize>stren Entonces
gotTopic=Izquierda(cadena,i) & "..."
Salir por
Demás
gotTopic=cadena & ""
Terminar si
Próximo
Función final
'******************************
'Nombre: ChkInvStr
'Parámetro: Cadena
'Valor de retorno: Verdadero/Falso
'Tiempo de creación: 2 de mayo de 2005
'Función: Comprobar si los parámetros tienen caracteres ilegales
'******************************
Función pública ChkInvStr(Str)
Rem define caracteres ilegales que deben filtrarse
Dim InvaildWord,inWords,i
Cadena=CStr(Cadena)
ChkInvStr=Falso
Si Len(Replace(p_InvaildWords,Chr(0),""))<1 Entonces
AddErrorCode(103) 'palabras inválidas es nulo
Función de salida
Demás
Si Instr(1,p_Invaildwords,"|")>0 Entonces
Palabra Inválida=Dividir(p_Palabras Inválidas,"|")
enWords=LCase(Recortar(Str))
Para i=LBound(Palabra Inválida) a UBound(Palabra Inválida)
Si Instr(inWords,InvaildWord(i))>0 Entonces
p_Error=1982
Agregar código de error (105)
ChkInvStr=Verdadero
Función de salida
Terminar si
Próximo
Demás
Se requiere AddErrorCode(104) '"|"
Función de salida
Terminar si
Terminar si
Función final
'******************************
'Nombre: Obtener IP
'Parámetro: NULO
'Valor de retorno: NULO
'Tiempo de creación: 3 de mayo de 2005
'Función: Obtener la dirección IP del usuario
'******************************
Función pública GetIP()
p_IpAdd=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
Si IsNull(p_IpAdd) O p_IpAdd="" Entonces
p_IpAdd=Request.ServerVariables("REMOTE_ADDR")
Terminar si
ObtenerIp=p_IpAgregar
Función final
'******************************
'Nombre: Dirección IP
'Parámetro: sorbo
'Valor de retorno: condado, ciudad
'Función: composición tipográfica y conversión de contenido de datos.
'Tiempo de creación: 6 de mayo de 2005
'Fuente: www.downcodes.com
'******************************
Dirección IP de función pública (sip)
Atenuar IPConnStr,IPConn,IPAddressDB
Atenuar str1, str2, str3, str4
número tenue
País oscuro, ciudad, dirección
DPI débiles, SQL
dirección = "desconocido"
Si es numérico (izquierda (sip, 2)) entonces
Si sip="127.0.0.1" Entonces sip="192.168.0.1"
str1=Izquierda(sorbo,InStr(sorbo,".")-1)
sorbo=medio(sorbo,instr(sorbo,".")+1)
str2=Izquierda(sorbo,instr(sorbo,".")-1)
sorbo=Medio(sorbo,InStr(sorbo,".")+1)
str3=Izquierda(sorbo,instr(sorbo,".")-1)
str4=Medio(sorbo,instr(sorbo,".")+1)
Si isNumeric(str1)=0 o isNumeric(str2)=0 o isNumeric(str3)=0 o isNumeric(str4)=0 Entonces
Demás
número=CLng(cadena1)*16777216+CLng(cadena2)*65536+CLng(cadena3)*256+CLng(cadena4)-1
DirecciónIPDB = "DSJ_Ipaddress.mdb"
IPConnStr = "Proveedor = Microsoft.Jet.OLEDB.4.0; Fuente de datos = " & Server.MapPath(p_dbFolder & IPAddressDB)
Establecer IPConn = Server.CreateObject("ADODB.Connection")
IPConn.Abrir IpConnStr
país="Asia"
ciudad=""
sql="seleccione el primer país y ciudad de DSJ_IPAddress donde ip1 <="&num&" e ip2 >="&num&""
Establecer DPI = IPConn.execute (sql)
Si no (IPRs.EOF y IPRs.bof) entonces
país=DPI(0)
ciudad=DPI(1)
Terminar si
IpRs.Close: Establecer IPR = Nada
IPConn.CLose:Establecer IPConn = Nada
NúmConsulta Sql = NúmConsulta Sql+1
Terminar si
Dirección IP=país y ciudad
Terminar si
Función final
'******************************
'Nombre: Cliente conectado
'Parámetro: NULO
'Valor de retorno: NULO
'Tiempo de creación: 5 de mayo de 2005
'Función: Obtener si el usuario está conectado al servidor
'******************************
Subcliente público conectado()
Si Response.IsClientConnected entonces
Respuesta.Flush()
Demás
Respuesta.Fin()
Terminar si
Subtítulo final
'******************************
'Nombre: ChkPost
'Parámetro: NULO
'Valor de retorno: Verdadero/Falso
'Tiempo de creación: 5 de mayo de 2005
'Función: Verificar la fuente de los datos enviados
'******************************
Función pública ChkPost()
Atenuar Server_v1,Server_v2
ChkPost=Falso
Servidor_v1=CStr(Request.ServerVariables("HTTP_REFERER"))
Server_v2=CStr(Request.ServerVariables("SERVER_NAME"))
Si Mid(Server_v1,8,Len(Server_v2))=Server_v2 Entonces ChkPost=True
Función final
'******************************
'Nombre: Agregar código de error
'Parámetro:CódigoErr
'Valor de retorno: ErrCodes
'Tiempo de creación: 3 de mayo de 2005
'Función: Agregar códigos de error a ErrCodes
'******************************
Sub público AddErrorCode (ErrCode)
Si ErrCodes="" Entonces
CódigosErr=CódigoErr
Demás
ErrCodes=ErrCodes & "," & ErrCode
Terminar si
Subtítulo final
'******************************
'Nombre: ShowErrMsg
'Parámetro: NULO
'Valor de retorno: NULO
'Tiempo de creación: 3 de mayo de 2005
'Función: Mostrar información detallada del error
'******************************
Función pública ShowErrMsg()
Si NO es p_Debug, en caso de error, reanudar a continuación
Si ErrCodes<>"" Entonces
iErrCodes=Dividir(ErrCodes,",",-1,Binario)
Para i=LBound(iErrCodes) a UBound(iErrCodes)
tmpErrCode=CLng(iErrCodes(i))
Si es numérico (tmpErrCode) entonces
ErrMsg=ErrMsg & ErrDetails(tmpErrCode)
Terminar si
Próximo
Terminar si
MostrarMsgErr=MensajeErr
Función final
'******************************
'Nombre: Base de datos de conexión
'Parámetros:Base de datos,p_dbUserID,p_dbContraseña,p_dbType
'Valor de retorno: NULO
'Función: conectarse a la base de datos
'Tiempo de creación: 6 de mayo de 2005
'******************************
Conexión de función públicaBase de datos (param_DataBase, param_dbUserID, param_dbPassword, param_dbType)
Si no es p_Debug, en caso de error, continúe a continuación
ClienteConectado
Si es numérico (param_dbType) entonces
Establecer objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionTimeOut=10 'Establece el tiempo de espera de la conexión en 10 segundos
dbPath=Servidor.MapPath(p_dbFolder¶m_DataBase)
'Respuesta.Escribir dbPath
Seleccione Caso param_dbType
Caso 11: 'Acceso a Base de Datos (OLEDB)
ConnStr="Provider=Microsoft.Jet.Oledb.4.0;Data Source="&dbPath&";ID de usuario="¶m_dbUserID&";Contraseña="¶m_dbPassword&""
Caso 21: 'Servidor SQL (OLEDB)
ConnStr="Provider=SQLOLEDB;Catálogo inicial="¶m_DataBase&";Fuente de datos="&p_sqlDataSource&";ID de usuario="¶m_dbUserID&";Contraseña="¶m_dbPassword&""
Caso 12: 'Acceso a Base de Datos (ODBC)
ConnStr="Driver={Controlador de Microsoft Access (*.mdb)};DBQ="&dbPath&";ID de usuario="¶m_dbUserID&";Contraseña="¶m_dbPassword
Caso 22: 'Servidor SQL (ODBC)
ConnStr="Driver={SQL Server};DataBase="¶m_DataBase&";Server="&p_sqlDataSource&";ID de usuario="¶m_dbUserID&";Contraseña="¶m_dbPassword&""
Otro caso:
Agregar código de error (100)
Si p_Debug Entonces Response.Write ShowErrMsg()
'Función de salida
Finalizar selección
objConn.ConnectionString=ConnStr
objConn.Open
Establecer ConnectionDataBase=objConn
Si se equivoca entonces
Err.Borrar
Si guardar registro entonces
tmpMsg="Se produjo un error durante la conexión de la base de datos, verifique si su código de consulta es correcto.<br>Por razones de seguridad, solo se muestra esta información. Para ver información detallada del error, configure dsj.Debug=True"
cmd="Ejecutar el comando de:"¶m_dbtype
Respuesta.Escribir SaveSQLLog(cmd,tmpMsg)
Demás
Response.Write "Se produjo un error al conectarse a la base de datos. Verifique si su código de consulta es correcto".
Terminar si
Agregar código de error (101)
Establecer objConn=Nada
Respuesta.Fin()
Terminar si
Terminar si
Función final
'******************************
'Nombre: GuardarSQLLog
'Parámetros:sComando,Mensaje
'Valor de retorno: mensaje
'Función: almacenar registros
'Tiempo de creación: 6 de mayo de 2005
'******************************
Función pública SaveSQLLog(sCommand,Msg)
Si no es p_Debug, en caso de error, continúe a continuación
logDB="DSJ_SQLLog.mdb"
'Base de datos de conexión logDB,p_dbUserID,p_dbContraseña,12
logConnStr = "Proveedor = Microsoft.Jet.OLEDB.4.0; Fuente de datos = " & Server.MapPath(p_dbFolder & logDB)
Establecer logConn = Server.CreateObject("ADODB.Connection")
logConn.Abrir logConnStr
Si guardar registro entonces
Registro tenueCmd
logCmd="INSERTAR EN DSJ_SQL_Log (comando, nombre de script, usuario de registro, IP) VALORES "
logCmd=logCmd & "('" & Reemplazar(Left(sCommand,255),"'","''") &"','" & (ScriptFolder & ScriptName) &"','" & Session("Usuario ") & "','"& ObtenerIP & "')"
'Response.Write "El comando necesario para ejecutar es:<br><font color=red>" & logCmd & "</font><BR>"
logConn.Execute(logCmd)
Terminar si
logConn.Cerrar
Establecer logConn=Nada
GuardarSQLLog=mensaje
NúmConsulta SQL=NúmConsulta SQL+1
Función final
'******************************
'Nombre: EjecutarCmd
'Parámetro: cmd
'Valor de retorno: RecordSet
'Función: Devuelve el conjunto de registros creado por cmd
'Tiempo de creación: 6 de mayo de 2005
'******************************
Función pública EjecutarCmd(cmd)
Si NO esObjeto(objConn) Entonces ConnectionDataBase p_DataBase,p_dbUserID,p_dbPassword,p_dbType
Si NO es p_Debug, en caso de error, reanudar a continuación
ClienteConectado
Establecer ExecuteCmd=objConn.Execute(cmd)
Si se equivoca entonces
Err.Borrar
objConn.Cerrar
Establecer objConn=Nada
Si guardar registro entonces
tmpMsg="Se encontró un error al consultar datos, verifique si su código de consulta es correcto.<br>Por razones de seguridad, solo se muestra esta información. Para ver información detallada del error, configure dsj.Debug=True"
Respuesta.Escribir SaveSQLLog(cmd,tmpMsg)
Demás
Response.Write "Se encontró un error al consultar datos. Verifique si su código de consulta es correcto".
Terminar si
Respuesta.Fin()
Terminar si
NúmConsulta SQL=NúmConsulta SQL+1
Función final
'******************************
'Nombre: código HTML
'Parámetro:fCadena
'Valor de retorno: HTMLEncode
'Función: composición tipográfica y conversión de contenido de datos.
'Tiempo de creación: 6 de mayo de 2005
'******************************
Función pública HTMLEncode (fString)
Si no es IsNull(fString) o fString<>"" Entonces
fString=Reemplazar(fString,"<","<")
fString=Reemplazar(fString,">",">")
fString=Replace(fString,Chr(9)," ") 'Fuente cursiva
fString=Reemplazar(fString,Chr(13),"")
fString=Replace(fString,Chr(32)," ") 'Convertir espacios
fString=Replace(fString,Chr(34),""") 'Convertir comillas dobles
fString=Replace(fString,Chr(39),"'") 'Convertir comillas simples
fString=Replace(fString,Chr(10),"</p><p>") 'Convertir a formato de párrafo
fString=Replace(fString,Chr(10),"<BR> ") 'Convertir a la siguiente línea
fString=Reemplazar(fString,Chr(13),"<BR>")
fString=Reemplazar(fSting,vbCrlf,"<BR>")
'fString=EnlaceAmigo(fString)
'fString=ChkMalasPalabras(fString)
HTMLEncode=fString
Terminar si
Función final
'******************************
'Nombre: Amigo de Enlace
'Parámetro:fContenido
'Valor de retorno: LinkFriend
'Función: Reemplazar conexiones amigas
'Tiempo de creación: 6 de mayo de 2005
'******************************
Enlace de función públicaFriend(fContent)
Si NO es p_Debug, en caso de error, reanudar a continuación
Si NO es Objeto (objConn), entonces ConnectionDataBase Base de datos, dbUserID, dbPassword, dbType
Establecer rsFriend=ExecuteCmd("Seleccionar título, URL de dsj_FriendLink")
Si rsFriend.Eof y rsFriend.Bof entonces
Demás
Hacer mientras NO rsFriend.Eof
strTitle=rsFriend.Fields.Item("Título")
URL=rsFriend.Fields.Item("URL")
Si LCase(Izquierda(URL,1))<>"h" Entonces URL=Reemplazar(URL,Izquierda(URL,1),"")
strLink="<a target='_blank' title='" & strTitle &"' href='" & URL & "'>"
strLink=strLink&strTitle&"</a>"
Si Instr(fContent,strTitle)>0 Entonces fContent=Replace(fContent,strTitle,strLink)
rsFriend.MoveNext
Bucle
EnlaceAmigo=fContenido
Terminar si
rsFriend.Cerrar
Establecer rsFriend=Nada
NúmConsulta SQL=NúmConsulta SQL+1
Función final
'************************************************ * *******************
'Nombre: Mostrar página
'Parámetro: NULO
'Valor de retorno: NULO
'Función: Mostrar la navegación del registro de paginación
'ilustrar:
'Trabajo original: zykj2000 Sitio web: http://bbs.513soft.net
' Modificación: Alonesword Sitio web: http://blog.csdn.net/alonesword/
'Hora: 7 de mayo de 2005
'************************************************ * ****************
SubshowPage pública()
tenue str_tmp
p_intTotalRecords=rsDivPage.RecordCount
Si p_intTotalRecords<=0 Entonces
p_Error=p_Error & "El número total de registros es cero, ingrese datos"
Llamar a ShowError()
Terminar si
Si p_intTotalRecords <=PageSize Entonces
p_intPáginaTotal=1
Demás
Si p_intTotalRecords mod PageSize =0 Entonces
p_intTotalPage = CLng(p_intTotalRecords / Tamaño de página * -1)*-1
Demás
p_intTotalPage = CLng(p_intTotalRecords / Tamaño de página * -1)*-1+1
Terminar si
Terminar si
Si p_intCurPage>p_intTotalPage Entonces
p_intCurPage=p_intTotalPage
Terminar si
Respuesta.Escribir ShowFirstPrv
mostrarNumBtn
Respuesta.Escribir MostrarSiguienteÚltimo&" "
Respuesta.Escribir ShowPageInfo
respuesta.escribir str_tmp
Fin de
la función subprivada ShowFirstPrv()
Dim Str_tmp, int_prvpage
int_prvpage=p_intCurPage-1
Si int_prvpage<1 Entonces int_prvpage=1
Btn_FirstLink="<a title='Página 1' href='"&AddnPageURL&"1'>"&Btn_First
Btn_PrevLink="<a title='Página"&int_prvpage&" href='"&AddnPageURL&p_intCurPage-1&"'>"&Btn_Prev
Si p_intCurPage=1 Entonces
str_tmp=Btn_FirstLink&"</a> "&Btn_PrevLink&"</a> "
Demás
int_prvpage=p_intCurPage-1
str_tmp=""&Btn_FirstLink&"</a> "& Btn_PrevLink&"</a> "
Terminar si
MostrarFirstPrv=str_tmp
Función final
Función privada ShowNextLast()
Dim str_tmp,int_Nextpage
int_NextPage=p_intCurPage+1
Si p_intCurPage+1>p_intTotalPage Entonces int_NextPage=p_intTotalPage
Btn_NextLink="<a title='Página"&int_NextPage&"' href='"&AddnPageURL&p_intCurPage+1&"'>"&Btn_Next
Btn_LastLink="<a title='Página"&p_intTotalPage&" href='"&AddnPageURL&p_intTotalPage&"'>"&Btn_Last
Si p_intCurPage>=p_intTotalPage Entonces
str_tmp=Btn_NextLink & "</a> " & Btn_LastLink&"</a>"
Demás
Int_NextPage=p_intCurPage+1
str_tmp=""&Btn_NextLink&"</a> "& Btn_LastLink&"</a>"
Terminar si
MostrarSiguienteÚltimo=str_tmp
Función final
Función privada showNumBtn()
Dim i, str_tmp
Enlace de página oscuro
str_tmp=""
Para i=1 a p_intTotalPage Paso 1
PageLink=" <a title='Página"&i&" href='"&AddnPageURL&i&"'>"&i&"</a> "
Si i=p_intCurPage Then PageLink=" <a title='Page"&i&" href='"&AddnPageURL&i&"'><font color=red>"&i&"</font></a> "
Respuesta.Escribir enlace de página
Próximo
mostrarNumBtn=str_tmp
Función final
Función privada ShowPageInfo()
tenue str_tmp
str_tmp="Página:"&p_intCurPage&"/"&p_intTotalPage&"Total de páginas"&p_intTotalRecords&"records"&p_rsPageSize&"registros/por página"
ShowPageInfo=str_tmp
Función final
Función privada AddnPageURL()
Dim i,j,search_str,result_url
search_str="página="
str_params=Request.ServerVariables("QUERY_STRING")
Si str_params="" Entonces
result_url=Nombre del script & "?page="
Demás
Si InstrRev(str_params,search_str)=0 Entonces
result_url=Nombre del script & "?" & str_params &"&page="
Demás
j=InstrRev(str_params,cadena_búsqueda)-2
Si j=-1 Entonces
result_url=Nombre del script & "?page="
Demás
str_params=Izquierda(str_params,j)
result_url=Nombre del script & "?" & str_params &"&page="
Terminar si
Terminar si
Terminar si
AddnPageURL=result_url
Función final
'************************************************ * ****************
Función pública GetName (Opciones)
Nombre tmp tenue
tmpName=Request.ServerVariables("PATH_INFO")
arrTmpName=Dividir(tmpName,"/")
Si Opciones=0 Entonces GetName=Server.Mappath(".")&GetName(1)
Si Opciones = 1, entonces GetName = LCase (arrTmpName (UBound (arrTmpName)))
Si Opciones=2 Entonces GetName=LCase(arrTmpName(UBound(arrTmpName)-1))&"/"
Función final
Fin de clase
%>