In letzter Zeit war ich davon besessen, Websites zu erstellen. Ich habe festgestellt, dass ASP viele Lücken aufweist und es viele Codes gibt, die in einer Website wiederverwendet werden. Daher habe ich einige Informationen überprüft und festgestellt, dass die Idee dahinter steckt Klassen können in ASP verwendet werden, daher habe ich diese Klasse geschrieben. Sie ist nicht gut geschrieben, aber ziemlich praktisch.
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%
Const Btn_First="<font face='webdings'>9</font>" 'Definieren Sie den Anzeigestil der Schaltfläche für die erste Seite
Const Btn_Prev="<font face='webdings'>3</font>" 'Definieren Sie den Anzeigestil der Schaltfläche für die vorherige Seite
Const Btn_Next="<font face='webdings'>4</font>" 'Definieren Sie den Anzeigestil der Schaltfläche für die nächste Seite
Const Btn_Last="<font face='webdings'>:</font>" 'Definieren Sie den Anzeigestil der Schaltfläche für die letzte Seite.
Klasse clsDSJ
Privat p_Error,p_IpAdd,p_Debug,Errs
Private p_InvaildWords
Private tmpStr
Private objConnDivPage,rsDivPage,p_GetSQL,p_nPage
Privat p_rsPageSize,p_intCurPage,p_strURL,p_intTotalPage,p_intTotalRecords
Privat p_dbType,p_dbFolder,p_DataBase,dbPath,p_dbUserID,p_dbPassword,p_sqlDataSource
Privat param_DataBase,param_dbUserID,param_dbPassword,param_dbType
'Eigentum
Öffentliches ObjektConn,ConnStr,SQLQueryNum
Öffentliche logDB,WebURL
Öffentliches SaveLog
Öffentliche ErrCodes,ErrCode,ErrMsg
Öffentlicher Skriptordner, Skriptname
Private Sub Class_Initialize
p_Debug=True
ClientConnected
SaveLog=True
ErrMsg=""
p_Error=0
SQLQueryNum=0
Initialisierung der Rem-Datenbankverbindung
dbType=12 'Nehmen Sie 1x——Access, 2x——SQL; x1——OLEDB, x2—ODBC
dbFolder="Daten"
DataBase="zhubizidatabase.MDB"
dbUserID=""
dbPassword=""
sqlDataSource=""
p_rsPageSize=10
'p_nPage=2
Wenn request("page")="" Dann
p_intCurPage=1
ElseIf NOT IsNumeric(request("page")) Then
p_intCurPage=1
ElseIf CInt(Trim(request("page")))<1 Then
p_intCurPage=1
Anders
p_intCurPage=CInt(Trim(request("page")))
Ende wenn
WebURL=" http://blog.csdn.net/alonesword/ "
tmpStr=Request.ServerVariables("PATH_INFO")
tmpStr=Split(tmpStr,"/",-1)
ScriptName=Lcase(tmpStr(UBound(tmpStr)))
ScriptFolder=LCase(tmpStr(UBound(tmpStr)-1)) & "/"
p_InvaildWords=" select|update|delete|insert|@|--|;|'|#|%|xp|cmd|shell "
Sub beenden
Private Unterklasse_terminate()
If IsObject(rsDivPage) Then rsDivPage.Close:Set rsDivPage=Nothing
If IsObject(objConn) Then objConn.Close:Set objConn=Nothing
End Sub
Public Property Version abrufen
Version="DSJ 1.1.0 Beta"
End-Eigenschaft
Fehler beim Abrufen von öffentlichem Eigentum
Fehler=p_Error
End-Eigenschaft
Öffentliches Eigentum Get Debug
Debug=p_Debug
End-Eigenschaft
Öffentliche Eigenschaft Let Debug(BoolDebug)
Wenn BoolDebug, dann
p_Debug=True
Anders
p_Debug=False
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft Get dbType
dbType=p_dbType
End-Eigenschaft
Öffentliche Eigenschaft Let dbType(lngdbType)
Wenn IsNumeric(lngdbType) Dann
p_dbType=lngdbType
Anders
p_dbType=12
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft Get dbFolder
dbFolder=p_dbFolder
End-Eigenschaft
Öffentliche Eigenschaft Let dbFolder(strFolder)
Wenn Right(strFolder,1)="" ODER Right(strFolder,1)="/" Dann
p_dbFolder=strFolder
Anders
If (NOT IsNull(strFolder)) OR (strFolder<>"") Dann
p_dbFolder=strFolder & ""
Anders
p_dbFoler=""
Ende wenn
Ende wenn
End-Eigenschaft
Datenbank zum Abrufen von öffentlichem Eigentum
Datenbank=p_dataBase
End-Eigenschaft
Let-Datenbank für öffentliches Eigentum (strDataBase)
p_dataBase=strDatabase
End-Eigenschaft
Öffentliche Eigenschaft dbUserID abrufen
dbUserID=p_dbUserID
End-Eigenschaft
Öffentliche Eigenschaft Let dbUserID(strDataBaseUserID)
p_dbUserID=strDataBaseUserID
End-Eigenschaft
Öffentliche Eigenschaft Get dbPassword
dbPassword=p_dbPassword
End-Eigenschaft
Öffentliche Eigenschaft Let dbPassword(strDataBasePassword)
p_dbPassword=strDataBasePassword
End-Eigenschaft
Öffentliche Eigenschaft SQLDataSource abrufen
SQLDataSource=p_sqlDataSource
End-Eigenschaft
Öffentliche Eigenschaft Let SQLDataSource(strSQLDataSource)
Wenn strsqlDataSource<>"" Dann
Wenn Left(p_dbType,1)=2 Dann
p_sqlDataSource=strSQLDataSource
Anders
AddErrorCode(110)
p_sqlDataSource=""
Ende wenn
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft Let PageSize(int_PageSize)
Wenn IsNumeric(Int_Pagesize) Dann
p_rsPageSize=CLng(int_PageSize)
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft PageSize abrufen
Wenn p_rsPageSize="" oder NOT IsNumeric(p_rsPageSize) Dann
Seitengröße=8
Anders
PageSize=p_rsPageSize
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft Get GetRs()
Wenn NICHT debuggen, dann bei Fehler mit Weiter fortfahren
Wenn NICHT IsObject(objConn), dann ConnectionDataBase dbDataBase,dbUserID,dbPassword,dbType
Wenn NICHT IsObject(rsDivPage) Dann
Setze rsDivPage=Server.createobject("adodb.recordset")
rsDivPage.Open GetSQL,objConn,1,1
rsDivPage.PageSize=Seitengröße
Wenn nicht (rsDivPage.eof und rsDivPage.BOF) Dann
Wenn p_intCurPage>rsDivPage.PageCount Dann
p_intCurPage=rsDivPage.PageCount
Ende wenn
rsDivPage.AbsolutePage=p_intCurPage
Ende wenn
Wenn Sie sich irren, dann
Err.Clear
rsDivPage.Close
Setze rsDivPage=Nothing
Wenn SaveLog, dann
tmpMsg="Fehler beim Herstellen der Verbindung zur Datenbank. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.<br>Aus Sicherheitsgründen wird nur diese Meldung angezeigt. Um detaillierte Fehlermeldungen anzuzeigen, setzen Sie bitte dsj.Debug=True"
Response.Write SaveSQLLog(cmd,tmpMsg)
Anders
Response.Write „Fehler beim Herstellen der Verbindung zur Datenbank. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.“
Ende wenn
Response.End()
Ende wenn
SQLQueryNum=SQLQueryNum+1
Legen Sie GetRs=rsDivPage fest
Ende wenn
End-Eigenschaft
Öffentliche Eigenschaft Let GetSQL(str_sql)
Wenn str_sql<>"" Dann
p_GetSQL=str_sql
Anders
AddErrorCode(111)
Wenn Debug, dann ShowErrMsg()
p_GetSQL="Die Eigenschaft von GetSQL ist NULL."
Ende wenn
End-Eigenschaft
Öffentliches Eigentum Get GetSQL()
GetSQL=p_GetSQL
End-Eigenschaft
'******************************
'Name: gotTopic
'Parameter: str, strlen
'Rückgabewert: eingeschränkter String
'Erstellungszeitpunkt: 3. März 2005
'Funktion: Beschränken Sie die eingeschränkte Zeichenfolge
'******************************
Öffentliche Funktion GotToPic(str,strlen)
Rem begrenzt die Anzeigelänge der Zeichenfolge auf einen bestimmten Bereich
Dim i,StringLen,CharSize,EchoCharType
StringLen=len(str)
CharSize=0
Für i=1 bis StringLen
EchoCharType=Abs(Asc(Mid(str,i,1)))
Wenn EchoCharType>255, dann
CharSize=CharSize+2
Anders
CharSize=CharSize+1
Ende wenn
Wenn CharSize>strlen Dann
gotTopic=Left(str,i) & "..."
Ausgang für
Anders
gotTopic=str & ""
Ende wenn
Nächste
Funktion beenden
'******************************
'Name: ChkInvStr
'Parameter: Str
'Rückgabewert: Wahr/Falsch
„Erstellungszeitpunkt: 2. Mai 2005
'Funktion: Überprüfen Sie, ob die Parameter unzulässige Zeichen enthalten
'******************************
Öffentliche Funktion ChkInvStr(Str)
Rem definiert illegale Zeichen, die gefiltert werden müssen
Dim InvaildWord,inWords,i
Str=CStr(Str)
ChkInvStr=False
Wenn Len(Replace(p_InvaildWords,Chr(0),""))<1 Dann
AddErrorCode(103) 'invaildwords ist null
Exit-Funktion
Anders
Wenn Instr(1,p_Invaildwords,"|")>0 Dann
InvaildWord=Split(p_InvaildWords,"|")
inWords=LCase(Trim(Str))
Für i=LBound(InvaildWord) To UBound(InvaildWord)
Wenn Instr(inWords,InvaildWord(i))>0 Dann
p_Error=1982
AddErrorCode(105)
ChkInvStr=True
Exit-Funktion
Ende wenn
Nächste
Anders
AddErrorCode(104) '"|" ist erforderlich.
Exit-Funktion
Ende wenn
Ende wenn
Funktion beenden
'******************************
'Name: GetIP
'Parameter: NULL
'Rückgabewert: NULL
„Erstellungszeitpunkt: 3. Mai 2005
'Funktion: Ermitteln Sie die IP-Adresse des Benutzers
'******************************
Öffentliche Funktion GetIP()
p_IpAdd=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
Wenn IsNull(p_IpAdd) ODER p_IpAdd="" Dann
p_IpAdd=Request.ServerVariables("REMOTE_ADDR")
Ende wenn
GetIp=p_IpAdd
Funktion beenden
'******************************
'Name: IP-Adresse
'Parameter: Schluck
'Rückgabewert: Landkreis, Stadt
„Funktion: Satz und Konvertierung von Dateninhalten.“
„Erstellungszeitpunkt: 6. Mai 2005
'Quelle: www.downcodes.com
'******************************
Öffentliche Funktion IPAddress(sip)
Dimmen Sie IPConnStr, IPConn, IPAddressDB
Dimmen Sie str1, str2, str3, str4
Dim Num
Land, Stadt, Adresse dunkel
Schwache geistige Eigentumsrechte und SQL
Adresse="unbekannt"
If IsNumeric(Left(sip,2)) Then
Wenn sip="127.0.0.1" Dann sip="192.168.0.1"
str1=Left(sip,InStr(sip,".")-1)
sip=mid(sip,instr(sip,".")+1)
str2=Left(sip,instr(sip,".")-1)
sip=Mid(sip,InStr(sip,".")+1)
str3=Left(sip,instr(sip,".")-1)
str4=Mid(sip,instr(sip,".")+1)
Wenn isNumeric(str1)=0 oder isNumeric(str2)=0 oder isNumeric(str3)=0 oder isNumeric(str4)=0 Dann
Anders
num=CLng(str1)*16777216+CLng(str2)*65536+CLng(str3)*256+CLng(str4)-1
IPAddressDB = „DSJ_Ipaddress.mdb“
IPConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(p_dbFolder & IPAddressDB)
Setze IPConn = Server.CreateObject("ADODB.Connection")
IPConn.Open IpConnStr
Land="Asien"
Stadt=""
sql="Wählen Sie das Top-1-Land und die Top-1-Stadt aus DSJ_IPAddress aus, wobei IP1 <="&num&" und IP2 >="&num&" ist.
Setze IPRs=IPConn.execute(sql)
Wenn nicht (IPRs.EOF und IPRs.bof), dann
Land=IPRs(0)
Stadt=IPRs(1)
Ende wenn
IpRs.Close:Set IPRs=Nothing
IPConn.CLose:Set IPConn = Nichts
SqlQueryNum = SqlQueryNum+1
Ende wenn
IPAddress=Land&Stadt
Ende wenn
Funktion beenden
'******************************
'Name: ClientConnected
'Parameter: NULL
'Rückgabewert: NULL
„Erstellungszeitpunkt: 5. Mai 2005
'Funktion: Ermitteln Sie, ob der Benutzer mit dem Server verbunden ist
'******************************
Öffentlicher Sub ClientConnected()
Wenn Response.IsClientConnected dann
Response.Flush()
Anders
Response.End()
Ende wenn
Sub beenden
'******************************
'Name: ChkPost
'Parameter: NULL
'Rückgabewert: Wahr/Falsch
„Erstellungszeitpunkt: 5. Mai 2005
'Funktion: Überprüfen Sie die Quelle der übermittelten Daten
'******************************
Öffentliche Funktion ChkPost()
Dimmen Sie Server_v1, Server_v2
ChkPost=False
Server_v1=CStr(Request.ServerVariables("HTTP_REFERER"))
Server_v2=CStr(Request.ServerVariables("SERVER_NAME"))
Wenn Mid(Server_v1,8,Len(Server_v2))=Server_v2, dann ist ChkPost=True
Funktion beenden
'******************************
'Name: AddErrorCode
'Parameter:ErrCode
'Rückgabewert: ErrCodes
„Erstellungszeitpunkt: 3. Mai 2005
'Funktion: Fehlercodes zu ErrCodes hinzufügen
'******************************
Öffentlicher Sub AddErrorCode(ErrCode)
Wenn ErrCodes="" Dann
ErrCodes=ErrCode
Anders
ErrCodes=ErrCodes & "," & ErrCode
Ende wenn
Sub beenden
'******************************
'Name: ShowErrMsg
'Parameter: NULL
'Rückgabewert: NULL
„Erstellungszeitpunkt: 3. Mai 2005
'Funktion: Detaillierte Fehlerinformationen anzeigen
'******************************
Öffentliche Funktion ShowErrMsg()
Wenn NICHT p_Debug, dann bei Fehler Weiter fortsetzen
Wenn ErrCodes<>"" Dann
iErrCodes=Split(ErrCodes,",",-1,Binary)
Für i=LBound(iErrCodes) bis UBound(iErrCodes)
tmpErrCode=CLng(iErrCodes(i))
Wenn IsNumeric(tmpErrCode) Dann
ErrMsg=ErrMsg & ErrDetails(tmpErrCode)
Ende wenn
Nächste
Ende wenn
ShowErrMsg=ErrMsg
Funktion beenden
'******************************
'Name: ConnectionDataBase
'Parameter:DataBase,p_dbUserID,p_dbPassword,p_dbType
'Rückgabewert: NULL
'Funktion: Verbindung zur Datenbank herstellen
„Erstellungszeitpunkt: 6. Mai 2005
'******************************
Öffentliche Funktion ConnectionDataBase(param_DataBase,param_dbUserID,param_dbPassword,param_dbType)
Wenn nicht p_Debug, dann bei Fehler Weiter fortsetzen
ClientConnected
Wenn IsNumeric(param_dbType) Dann
Set objConn=Server.CreateObject("ADODB.Connection")
objConn.ConnectionTimeOut=10 'Setzen Sie das Verbindungszeitlimit auf 10 Sekunden
dbPath=Server.MapPath(p_dbFolder¶m_DataBase)
'Response.Write dbPath
Wählen Sie Case param_dbType aus
Fall 11: „Zugriff auf Datenbank (OLEDB)“
ConnStr="Provider=Microsoft.Jet.Oledb.4.0;Data Source="&dbPath&";Benutzer-ID="¶m_dbUserID&";Password="¶m_dbPassword&""
Fall 21: „SQL Server (OLEDB)“
ConnStr="Provider=SQLOLEDB;Initial Catalog="¶m_DataBase&";Data Source="&p_sqlDataSource&";Benutzer-ID="¶m_dbUserID&";Password="¶m_dbPassword&""
Fall 12: „Zugriff auf Datenbank (ODBC)“
ConnStr="Driver={Microsoft Access Driver (*.mdb)};DBQ="&dbPath&";Benutzer-ID="¶m_dbUserID&";Password="¶m_dbPassword
Fall 22: 'SQL Server (ODBC)
ConnStr="Driver={SQL Server};DataBase="¶m_DataBase&";Server="&p_sqlDataSource&";Benutzer-ID="¶m_dbUserID&";Password="¶m_dbPassword&""
Anderer Fall:
AddErrorCode(100)
Wenn p_Debug, dann Response.Write ShowErrMsg()
'Exit-Funktion
Endauswahl
objConn.ConnectionString=ConnStr
objConn.Open
Legen Sie ConnectionDataBase=objConn fest
Wenn Sie sich irren, dann
Err.Clear
Wenn SaveLog, dann
tmpMsg="Während der Datenbankverbindung ist ein Fehler aufgetreten. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.<br>Aus Sicherheitsgründen werden nur diese Informationen angezeigt. Um detaillierte Fehlerinformationen anzuzeigen, setzen Sie bitte dsj.Debug=True"
cmd="Führen Sie den Befehl von aus:"¶m_dbtype
Response.Write SaveSQLLog(cmd,tmpMsg)
Anders
Response.Write „Beim Herstellen der Verbindung zur Datenbank ist ein Fehler aufgetreten. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.“
Ende wenn
AddErrorCode(101)
Setze objConn=Nothing
Response.End()
Ende wenn
Ende wenn
Funktion beenden
'******************************
'Name: SaveSQLLog
'Parameter:sCommand,Msg
'Rückgabewert: msg
'Funktion: Protokolle speichern
„Erstellungszeitpunkt: 6. Mai 2005
'******************************
Öffentliche Funktion SaveSQLLog(sCommand,Msg)
Wenn nicht p_Debug, dann bei Fehler Weiter fortsetzen
logDB="DSJ_SQLLog.mdb"
'ConnectionDataBase logDB,p_dbUserID,p_dbPassword,12
logConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(p_dbFolder & logDB)
Setze logConn = Server.CreateObject("ADODB.Connection")
logConn.LogConnStr öffnen
Wenn SaveLog, dann
LogCmd dimmen
logCmd="INSERT INTO DSJ_SQL_Log (Command,ScriptName,logUser,IP) VALUES "
logCmd=logCmd & "('" & Replacement(Left(sCommand,255),"'","''") &"','" & (ScriptFolder & ScriptName) &"','" & Session("User ") & "','"& GetIP & "')"
'Response.Write „Der Befehl muss ausgeführt werden:<br><font color=red>“ & logCmd & „</font><BR>“
logConn.Execute(logCmd)
Ende wenn
logConn.Close
Setzen Sie logConn=Nothing
SaveSQLLog=msg
SQLQueryNum=SQLQueryNum+1
Funktion beenden
'******************************
'Name: ExecuteCmd
'Parameter: cmd
'Rückgabewert: RecordSet
'Funktion: Gibt das von cmd erstellte Recordset zurück
„Erstellungszeitpunkt: 6. Mai 2005
'******************************
Öffentliche Funktion ExecuteCmd(cmd)
Wenn NICHT IsObject(objConn), dann ConnectionDataBase p_DataBase,p_dbUserID,p_dbPassword,p_dbType
Wenn NICHT p_Debug, dann bei Fehler Weiter fortsetzen
ClientConnected
Setze ExecuteCmd=objConn.Execute(cmd)
Wenn Sie sich irren, dann
Err.Clear
objConn.Close
Setze objConn=Nothing
Wenn SaveLog, dann
tmpMsg="Bei der Datenabfrage wurde ein Fehler gefunden. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.<br>Aus Sicherheitsgründen werden nur diese Informationen angezeigt. Um detaillierte Fehlerinformationen anzuzeigen, setzen Sie bitte dsj.Debug=True"
Response.Write SaveSQLLog(cmd,tmpMsg)
Anders
Response.Write „Bei der Datenabfrage wurde ein Fehler festgestellt. Bitte überprüfen Sie, ob Ihr Abfragecode korrekt ist.“
Ende wenn
Response.End()
Ende wenn
SQLQueryNum=SQLQueryNum+1
Funktion beenden
'******************************
'Name: HTMLEncode
'Parameter:fString
'Rückgabewert: HTMLEncode
„Funktion: Satz und Konvertierung von Dateninhalten.“
„Erstellungszeitpunkt: 6. Mai 2005
'******************************
Öffentliche Funktion HTMLEncode(fString)
Wenn nicht IsNull(fString) oder fString<>"" dann
fString=Replace(fString,"<","<")
fString=Replace(fString,">",">")
fString=Replace(fString,Chr(9)," ") 'Kursive Schriftart
fString=Replace(fString,Chr(13),"")
fString=Replace(fString,Chr(32)," ") 'Leerzeichen konvertieren
fString=Replace(fString,Chr(34),""") 'Doppelte Anführungszeichen konvertieren
fString=Replace(fString,Chr(39),"'") 'Einfache Anführungszeichen konvertieren
fString=Replace(fString,Chr(10),"</p><p>") 'In Absatzformat konvertieren
fString=Replace(fString,Chr(10),"<BR> ") 'In die nächste Zeile konvertieren
fString=Replace(fString,Chr(13),"<BR>")
fString=Replace(fSting,vbCrlf,"<BR>")
'fString=LinkFriend(fString)
'fString=ChkBadWords(fString)
HTMLEncode=fString
Ende wenn
Funktion beenden
'******************************
'Name: LinkFriend
'Parameter:fContent
'Rückgabewert: LinkFriend
'Funktion: Freundliche Verbindungen ersetzen
„Erstellungszeitpunkt: 6. Mai 2005
'******************************
Öffentliche Funktion LinkFriend(fContent)
Wenn NICHT p_Debug, dann bei Fehler Weiter fortsetzen
Wenn NICHT IsObject(objConn), dann ConnectionDataBase DataBase,dbUserID,dbPassword,dbType
Setze rsFriend=ExecuteCmd("Titel,URL aus dsj_FriendLink auswählen")
Wenn rsFriend.Eof und rsFriend.Bof dann
Anders
Tun Sie dies NICHT während rsFriend.Eof
strTitle=rsFriend.Fields.Item("Titel")
URl=rsFriend.Fields.Item("URL")
If LCase(Left(URL,1))<>"h" Then URL=Replace(URl,Left(URL,1),"")
strLink="<a target='_blank' title='" & strTitle &"' href='" & URL & "'>"
strLink=strLink&strTitle&"</a>"
Wenn Instr(fContent,strTitle)>0, dann fContent=Replace(fContent,strTitle,strLink)
rsFriend.MoveNext
Schleife
LinkFriend=fContent
Ende wenn
rsFriend.Close
Setze rsFriend=Nothing
SQLQueryNum=SQLQueryNum+1
Funktion beenden
'************************************************** * *****************
'Name: ShowPage
'Parameter: NULL
'Rückgabewert: NULL
'Funktion: Anzeige der Paging-Datensatznavigation
'veranschaulichen:
'Originalwerk: zykj2000 Website: http://bbs.513soft.net
' Änderung: Alonesword Website: http://blog.csdn.net/alonesword/
„Zeit: 7. Mai 2005
'************************************************** * ****************
Öffentliche Sub-ShowPage()
Dimmen Sie str_tmp
p_intTotalRecords=rsDivPage.RecordCount
Wenn p_intTotalRecords<=0 Dann
p_Error=p_Error & „Die Gesamtzahl der Datensätze ist Null, bitte geben Sie Daten ein“
Rufen Sie ShowError() auf
Ende wenn
Wenn p_intTotalRecords <=PageSize THen
p_intTotalPage=1
Anders
Wenn p_intTotalRecords mod PageSize =0 Dann
p_intTotalPage = CLng(p_intTotalRecords / PageSize * -1)*-1
Anders
p_intTotalPage = CLng(p_intTotalRecords / PageSize * -1)*-1+1
Ende wenn
Ende wenn
Wenn p_intCurPage>p_intTotalPage Dann
p_intCurPage=p_intTotalPage
Ende wenn
Response.Write ShowFirstPrv
showNumBtn
Response.Write ShowNextLast&" "
Response.Write ShowPageInfo
Antwort.write str_tmp
End Sub
Private Function ShowFirstPrv()
Dimmen Sie Str_tmp,int_prvpage
int_prvpage=p_intCurPage-1
Wenn int_prvpage<1, dann int_prvpage=1
Btn_FirstLink="<a title='Page 1' href='"&AddnPageURL&"1'>"&Btn_First
Btn_PrevLink="<a title='Page"&int_prvpage&" href='"&AddnPageURL&p_intCurPage-1&"'>"&Btn_Prev
Wenn p_intCurPage=1 Dann
str_tmp=Btn_FirstLink&"</a> "&Btn_PrevLink&"</a> "
Anders
int_prvpage=p_intCurPage-1
str_tmp=""&Btn_FirstLink&"</a> "& Btn_PrevLink&"</a> "
Ende wenn
ShowFirstPrv=str_tmp
Endfunktion
Private Funktion ShowNextLast()
Dimmen Sie str_tmp,int_Nextpage
int_NextPage=p_intCurPage+1
Wenn p_intCurPage+1>p_intTotalPage, dann int_NextPage=p_intTotalPage
Btn_NextLink="<a title='Page"&int_NextPage&"' href='"&AddnPageURL&p_intCurPage+1&"'>"&Btn_Next
Btn_LastLink="<a title='Page"&p_intTotalPage&" href='"&AddnPageURL&p_intTotalPage&"'>"&Btn_Last
Wenn p_intCurPage>=p_intTotalPage Dann
str_tmp=Btn_NextLink & "</a> " & Btn_LastLink&"</a>"
Anders
Int_NextPage=p_intCurPage+1
str_tmp=""&Btn_NextLink&"</a> "& Btn_LastLink&"</a>"
Ende wenn
ShowNextLast=str_tmp
Endfunktion
Private Funktion showNumBtn()
Dim i,str_tmp
PageLink abblenden
str_tmp=""
Für i=1 bis p_intTotalPage Schritt 1
PageLink=" <a title='Page"&i&" href='"&AddnPageURL&i&"'>"&i&"</a> "
If i=p_intCurPage Then PageLink=" <a title='Page"&i&" href='"&AddnPageURL&i&"'><font color=red>"&i&"</font></a> "
Response.Write PageLink
Nächste
showNumBtn=str_tmp
Endfunktion
Private Funktion ShowPageInfo()
Dimmen Sie str_tmp
str_tmp="Seite:"&p_intCurPage&"/"&p_intTotalPage&"Seitengesamtzahl"&p_intTotalRecords&"Datensätze"&p_rsPageSize&"Datensätze/pro Seite"
ShowPageInfo=str_tmp
Endfunktion
Private Funktion AddnPageURL()
Dim i,j,search_str,result_url
search_str="page="
str_params=Request.ServerVariables("QUERY_STRING")
Wenn str_params="" Dann
result_url=ScriptName & "?page="
Anders
Wenn InstrRev(str_params,search_str)=0 Dann
result_url=ScriptName & "?" & str_params &"&page="
Anders
j=InstrRev(str_params,search_str)-2
Wenn j=-1, dann
result_url=ScriptName & "?page="
Anders
str_params=Links(str_params,j)
result_url=ScriptName & "?" & str_params &"&page="
Ende wenn
Ende wenn
Ende wenn
AddnPageURL=result_url
Funktion beenden
'************************************************** * ****************
Öffentliche Funktion GetName(Optionen)
Dimmen Sie tmpName
tmpName=Request.ServerVariables("PATH_INFO")
arrTmpName=Split(tmpName,"/")
Wenn Optionen=0, dann GetName=Server.Mappath(".")&GetName(1)
Wenn Optionen=1, dann GetName=LCase(arrTmpName(UBound(arrTmpName)))
Wenn Optionen=2, dann GetName=LCase(arrTmpName(UBound(arrTmpName)-1))&"/"
Funktion beenden
Unterricht beenden
%>