我是新来的,在asp.net关闭浏览器时可能知道如何删除数据库中的数据?示例:当用户关闭浏览器时,想要在SQL server上自动删除一些记录。这可能吗?
home.aspx
<script type="text/javascript">
$(function () {
$(window).unload(function () {
$.aja(angry)
{
type:"Post",
url:"logout.aspx",
})
});
});
</script>
logout.aspx.vb
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim myDataReader As SqlDataReader
Dim mySQL As String
Dim myComm As SqlCommand
Dim myConn As SqlConnection
mySQL = "Delete from dbo.CheckLogin where @UserId = UserId"
myConn = New SqlConnection(ConfigurationManager.AppSettings(Session("ConnString")))
myConn.Open()
myComm = New SqlCommand(mySQL, myConn)
myComm.Parameters.AddWithValue("@UserId", Session("loginid"))
myDataReader = myComm.ExecuteReader()
WelMsg.Text = ""
Session.Clear()
End Sub
答案 0 :(得分:0)
首先,这实际上是一种糟糕的方法,其次它不起作用。当浏览器关闭时,网页无法往返服务器并请求运行sql查询。最多可以处理一些浏览器事件,有些可以在客户端清理。你能详细介绍一下你想要达到的目标吗?看一下代码,我建议你去做&#39;删除&#39;当用户从站点注销或者您可以将用户会话存储在数据库中时,可能会创建一些服务器端作业,如果用户未处于活动状态,这些作业将清除数据。有意义吗?