关闭浏览器asp.net时如何删除sql数据库中的数据
我是新来的,可能知道在asp.net中关闭浏览器时如何删除数据库中的数据?示例:当用户关闭浏览器时,希望在SQL server上自动删除某些记录。是否可能 home.aspx关闭浏览器asp.net时如何删除sql数据库中的数据,asp.net,vb.net,Asp.net,Vb.net,我是新来的,可能知道在asp.net中关闭浏览器时如何删除数据库中的数据?示例:当用户关闭浏览器时,希望在SQL server上自动删除某些记录。是否可能 home.aspx <script type="text/javascript"> $(function () { $(window).unload(function () { $.aja(angry) {
<script type="text/javascript">
$(function () {
$(window).unload(function () {
$.aja(angry)
{
type:"Post",
url:"logout.aspx",
})
});
});
</script>
首先,这确实是一个糟糕的方法,其次,它不会起作用。关闭浏览器后,网页无法往返到服务器并请求运行sql查询。您最多可以在客户端处理一些浏览器事件和一些清理。你能详细介绍一下你想要达到的目标吗?看看代码,我建议,当用户从站点注销时,您可以执行“删除”,或者您可以将用户会话存储在数据库中,或者创建一些服务器端作业,如果用户不活动,这些作业将清理数据。有意义吗?那么,当你尝试时会发生什么?当我关闭浏览器时,数据仍然存在。它不会删除sql server上的数据。不确定这是否是问题所在,但可能值得尝试GET而不是POST。我只是不记得在帖子中是否调用了Page_Load方法。可能是的,但还是值得一试。您应该调试一下,看看代码中哪里出了问题。您的Ajax调用正在执行吗?是否调用了服务器端页面加载方法?“卸载事件的确切处理方式因浏览器版本而异。例如,某些版本的Firefox在跟随链接时触发事件,但在关闭窗口时不会触发。在实际使用中,应该在所有受支持的浏览器上测试行为,并与专有的beforeunload事件进行对比。“我已经在注销时实现了删除功能。我想要实现这一点的原因是使用表存储用户ID。为了防止使用同一id多次登录,为什么不捕获浏览器关闭事件并将用户重定向到注销页面?可以告诉我怎么做吗?关闭的浏览器还可以重定向吗?
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