[英]classic asp connection
您将如何获取用户输入以通过不同网页进行连接。 这可以通过 session 变量来完成,还是有其他方法。 我不想在每个网页上都建立连接,有人可以指出我正确的方向来做一些研究。
这是来自 web 站点上根本没有任何连接字符串的站点的一些代码。
obj_ADO.ClearParameters
lng_RecSet1 = obj_ADO.GetFreeRecordset
obj_ADO.Recordset "A_combo_Permissions_select", adCmdStoredProc, obj_Session.int_CommandTimeout, lng_RecSet1
while obj_ADO.EOF(lng_RecSet1) = 0
和
如果 str_Action = obj_Session.str_FileName 或 len(str_Action)=0 或 str_Action = str_SwitchLangText 那么
obj_ADO.ClearParameters
obj_ADO.AddParameter "SessionID", adChar, adParamInput, len(obj_Session.str_SessionID), obj_Session.str_SessionID
obj_ADO.AddParameter "PermissionID", adInteger, adParamInput, 8, lng_PermissionID
lng_RecSet = obj_ADO.GetFreeRecordset
obj_ADO.Recordset "A_PagePermissions_select", adCmdStoredProc, obj_Session.int_CommandTimeout, lng_RecSet
我假设您的意思是数据库连接? 如果是这样,不,您不应该将任何 ADO 对象存储在 session 变量中; 它不会扩展并且因为它们是单元线程,所以它们不能使用线程池。
您应该在需要时在每个页面上连接和断开连接(即通常只有一次)。
幕后连接池意味着它的影响比您想象的要小。
数据库连接
采用自定义库至少作为open connection
, execute query
和close connection
的方法是正常的
例子:
<%
'' Database file database.asp
Sub openDB(query, objConn, objRS)
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "DSN=myCONNECTION.dsn"
objConn.Open
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open query, objConn
End Sub
Sub CloseRs(objRS)
objRS.Close
Set objRS = Nothing
End Sub
Sub CloseDb(objConn)
objConn.Close
Set objConn = Nothing
End Sub
%>
然后你可以简单地使用:
<!--#include file="header.inc"-->
<%
Dim rs, conn
openDb("SELECT Name FROM TBL_USERS", conn, rs)
'' you can loop through the rs object now
while NOT rs.EOF
Response.Write rs("Name")
rs.MoveNext
wend
closeRs(rs)
closeDb(conn)
%>
(旧帖子消息,因为我没有看到sql
标签
在经典 ASP中,它总是最终使用
Request.QueryString("myInput")
或Request.Forms("myInput")
或二合一Request("myInput")
并从那里开始工作
“连接”是通过链接建立的,并形成 Post's / Get's
web 上有很多例子,但这里有一个
为了保持跨页面的变量,你有(仍然是今天)3种方法
Session
变量,它离开每个用户 sessionApplication
变量,它离开每个网站,并在所有用户之间共享Cookies
例如,“授权页面访问”是通过在正确登录时设置Session
进行的,使用Response.Redirect("myProtectedPage.asp")
转发,并且该页面通常如下所示:
<%
If Session("user-login") = True Then
Response.Redirect("NotAuthorized.asp")
End if
%>
<!--#include file="header.inc"-->
...
更多在这里
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.