销毁ASP会话

时间:2014-08-23 10:51:19

标签: php session asp-classic

我正在研究的项目是将PHP编写的功能/页面集成到ASP编写的站点中。我正在尝试创建一段ASP代码,当我在PHP页面上时会破坏ASP会话。我以前没有ASP的经验所以请原谅我的无知。

所以,我打算做的是在我的PHP页面上创建一个简单的html链接,指向一个ASP页面,我想用它来破坏ASP会话。我尝试过Session.Abandon方法,设置Session(“name”)= nothing,Session(“name”)=“nothing”。不幸的是,所有这些方法都不起作用。

我迷路了,我到处搜寻可能出错的地方。想法有人吗?

提前致谢!

更新: 这是Sessions最初是从VBScript创建的一个因素吗?

4 个答案:

答案 0 :(得分:1)

在传统ASP中,使用Session.Abandon

答案 1 :(得分:0)

也许这些都不起作用,因为你不是“去服务器旅行”? 换句话说,如果您在包含此代码的页面上:

session("s_name_user")="mommy"
session.abandon
print session("s_name_user") 'hahaha

然后看起来session.abandon不起作用,因为会话变量保留了它的值。 但如果你这样做:

session("s_name_user")="mommy"
session.abandon
response.redirect("page2.asp")

和page2.asp有这个:

print session("s_name_user") 'hahaha

然后我们将看到会话变量失去其值。 顺便说一句,不要尝试“打印”命令。

答案 2 :(得分:0)

您需要做的只是在您希望解除会话使用的页面上:

Session.Contents.RemoveAll()

一旦页面运行,这将立即清除您的所有会话

答案 3 :(得分:0)

如果要删除特定会话的内容,则应使用Session.Contents.Remove("session_name")。如果要删除所有会话的内容,则应使用Session.Contents.RemoveAll()。如果要删除所有会话(包括其内容),请使用Session.Abandon。删除或添加任何会话后,您可以运行以下代码以查看所有活动会话:

Response.Write("Total Session: " & Session.Contents.Count & "<hr>")
For Each item in Session.Contents
    Response.Write(item & ": " & Session.Contents(item) & "<br>")
Next