如何防止網上投票重復投票(2)_ASP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:詳解Asp函數Cbool(string) 轉換為布爾值 Cbyte(string) 轉換為字節類型的值 Ccur(string) 轉換為貨幣類值 Cdate(string) 轉換為日前類型的值 Cdbl(string) 轉換為雙精度值 Cint(string) 轉換為整數值 Clng(string) 轉換為長整型的值 Csng(string) 轉換為單精度的值 Cstr(
< %
Function IsCookiesOpen()
Dim ClientIP, URL, QueryString, IsNew
Application.Lock
If Session(“SessionID")=Session.SessionID Then
IsCookiesOpen = True
ClearApp
Exit Function
End If
IsNew = False
If Session(“SessionID") = Empty Then
CurrentIP =Request.ServerVariables
(“REMOTE_ADDR")
If CurrentIP <> Application(“IP") Then
ClearApp
IsNew = True
End If
End If
If Not IsNew And Application(“Visit") >= 1 Then
IsCookiesOpen = False
ClearApp
Exit Function
End If
Application(“Visit") = Application(“Visit") + 1
Application(“IP") =Request.ServerVariables
(“REMOTE_ADDR")
Session(“SessionID") = Session.SessionID
URL =“_page_=”&Request.ServerVariables
(“PATH_INFO")
QueryString=Request.ServerVariables
(“QUERY_STRING")
If Len(QueryString) > 0 Then URL = URL & “&" & QueryString
If Not Response.IsClientConnected Then ClearApp
End Function
Sub ClearApp()
Application(“Visit") = 0
Application(“IP") = “"
End Sub
% >
在.asp文件中直接用IsCookiesOpen()函數來判定 Cookies是否打開。
此種方法的漏洞:如果再打開一個新瀏覽器窗口,會發現在新打開的瀏覽器窗口中仍然可以投票。這是因為Session是私有的,一個Session中變量的改變并不影響另一個Session的同名變量的值。為了解決這個問題,下面給出方法二。
分享:解析用ADO連接各種數據庫的代碼簡單介紹一下幾種ADO連接方式:ODBCDSN,ODBCDSN-Less, OLEDBProvider,和MSRemoteProvider. 1。ODBCDSN連接 I.DSN oConn.OpenDSN=AdvWorks;_ UID=Admin;_ PWD=; 注意:從MDAC2.1開始就不能夠在使用這樣的方式了,就是只把DSN文件名放在ConnectString中
相關ASP教程:
- 相關鏈接:
- 教程說明:
ASP教程-如何防止網上投票重復投票(2)。