完全按列子来的,只稍微改动了点:
Private MyScriptingContext As ScriptingContext
Private MyApplication As Application
Private MyRequest As Request
Private MyResponse As Response
Private MyServer As Server
Private MySession As Session
Public Sub OnStartPage(PassedScriptingContext As ScriptingContext)
Set MyScriptingContext = PassedScriptingContext
Set MyApplication = MyScriptingContext.Application
Set MyRequest = MyScriptingContext.Request
Set MyResponse = MyScriptingContext.Response
Set MyServer = MyScriptingContext.Server
Set MySession = MyScriptingContext.Session
End Sub
Public Sub OnEndPage()
Set MyScriptingContext = Nothing
Set MyApplication = Nothing
Set MyRequest = Nothing
Set MyResponse = Nothing
Set MyServer = Nothing
Set MySession = Nothing
End Sub
Public Function Rsa(strsql As String) As Recordset
Dim oConn As Connection
Dim strconnstring As String
strconnstring = "DRIVER={MySQL ODBC 3.51 DRIVER};SERVER=localhost;UID=root

WD=520520;Database=security"
oConn.Open strconnstring
strsql = "Select * From users"
Set Rsa = oConn.Execute(strsql)
End Function
Public Function Rsb(strsql As String) As Recordset
Dim oConn As Connection
Dim strconnstring As String
strconnstring = "DRIVER={MySQL ODBC 3.51 DRIVER};SERVER=localhost;UID=root

WD=520520;Database=security"
oConn.Open strconnstring
strsql = "Select * From Admin"
Set Rsb = oConn.Execute(strsql)
End Function
Public Function DataSourceConnection() As Variant
DataSourceConnection = "DRIVER={MySQL ODBC 3.51 DRIVER};SERVER=localhost;UID=root

WD=520520;Database=security"
End Function
生成:MyADODB.vbp和MyConnection.cls,产生个DLL
调用:
<%
Set Conn=Server.CreateObject("MyADODB.MyConnection") '调用组件创建对象实例
objConn=Conn.DataSourceConnection()
application("strconn")=objConn
%>
<%
'根据录入的用户信息查询数据
UserId = Trim(Session("user_id"))
UserPwd = Trim(Session("user_pwd"))
If UserId <> "" Then
Set Rsa = Server.CreateObject("ADODB.Recordset")
sql="Select * From users Where Email= '" & UserId & "' And Pwd='" & UserPwd & "'"
'Rsa.open sql,application("strconn"),1,3
Set rsa = application("strconn").Execute(sql)
'如果用户存在,则转向到AdminIndex.asp
If Not rsa.EOF Then
Response.Redirect("users/adminindex.asp")
Else
Set Rsb = Server.CreateObject("ADODB.Recordset")
sql1="Select * From Admin Where AdminId= '" & UserId & "' And Passwd='" & UserPwd & "'"
'Rsb.open sql1,application("strconn"),1,3
Set rsb = application("strconn").Execute(sql1)
'如果用户存在,则转向到AdminIndex.asp
If Not rsb.EOF Then
Session("admin_id") = UserId
Session("admin_pwd") = UserPwd
Session("user_id")=""
Session("user_pwd")=""
Response.Redirect("admin/adminindex.asp")
Else
rsb.close()
Set rsb = nothing
End If
rsa.close()
Set rsa = nothing
End If
End If
%>
显示:
Server 对象 错误 'ASP 0177 : 800401f3'
Server.CreateObject 失败
/security/index.asp,行 2
无效的类别字符串
估计是不认,为什么会这样?不知???