asp 与共享session - ASP教程_ASP编程_ASP开发技术文章 - 红黑联盟

2018-09-06 12:39

阅读:508

  用一个asp页,把session信息写到input中,提交给
trans.asp
<%
----------测试数据--------
session(name)=srx
session(id)=1
session(sex)=f
session(pass)=asdfas
session(age)=23
session(weight)=131
--------------------------

   Response.Write(<form name=frm id=frm action=asptoaspx.aspx method=post >)

  
Response.Write(<input type=hidden name= Item)
Response.Write( value= Session(item) >)
next

   if len(Request.QueryString(Destpage)) >4 then
Response.Write(<input type=hidden name=DestPage value= Request.querystring(DestPage) >)
end if
Response.Write(</FORM>)
Response.Write(<scr + ipt>frm.submit();</scr + ipt>)
%>

  
asptoaspx.aspx
<%@ Page language=c# %>
<script language=C# runat=server>
private void Page_Load(object sender, System.EventArgs e)
{
Session.Timeout = 60;

  
{
Session[Request.Form.GetKey(i)]=Request.Form[i].ToString();
}

allsession(); //输出所有的Session,使用时可注释掉

try
{
if( Session[DestPage].ToString().Length >4 )
{
Server.Transfer(Session[DestPage].ToString(),true);
}
}
catch{}

  }
private void allsession()
{
Response.Write (There are + Session.Contents.Count + Session <I>var</I>iables<P>);

foreach(object obj in Session.Contents)
{
Response.Write(Session[+obj.ToString()+] - +Session[obj.ToString()].ToString()+<br>);//输出所有的Session,使用时可注释掉
}
}
</script>

  用一个asp.net页,把session信息写到input中,提交给asp页

  
trans.aspx
<%@ Page language=c# %>
<script language=C# runat=server>
private void Page_Load(object sender, System.EventArgs e)
{
// ----------测试数据---------

Session[name] = srx;
Session[sex]=F;
//----------------------------

Response.Write(<form name=frm id=frm action=aspxtoasp.asp method=post>);
foreach(object obj in Session.Contents)
{
Response.Write(<input type=hidden name=+obj.ToString()+);
Response.Write( value = +Session[obj.ToString()].ToString()+>);
}
try
{
if(Request.QueryString[DestPage].ToString().Length > 4 )
{
Response.Write(<input type=hidden name=DestPage);
Response.Write( value = +Request.QueryString[DestPage].ToString()+>);
}
}
catch{}
Response.Write(</form>);
Response.Write(<scr+ipt language=javascript>frm.submit();</scr+ipt>);
}
</script>

  aspxtoasp.asp
<%
for i=1 to Request.Form.Count
Session(Request.Form.Key(i))=Request.Form(i)
next
ifLen(Session(DestPage)) >4 then
Response.Redirect(Session(DestPage))
end if

  -----------------------输出所有的Session------------------------------------------------

  call allsession() 使用时注释掉此行代码即可

  function allsession()
Response.Write There are Session.Contents.Count Session <I>var</I>iables<P>
Dim strName, iLoop
For Each strName in Session.Contents使用For Each循环察看Session.Contents

If IsArray(Session(strName)) then 如果Session变量是一个数组? 循环打印数组的每一个元素
For iLoop = LBound(Session(strName)) to UBound(Session(strName))
Response.Write strName ( iLoop ) - _
Session(strName)(iLoop) <BR>
Next
Else 其他情况,就简单打印变量的值
Response.Write strName - Session.Contents(strName) <BR>
End If
Next
end function
------------------------------------------------------------------------------------------
%>
代码实现的过程中,asp.net页面提交到asp页的时候不能使用Server.Transfer方法,所以只好用Response.Write来自己写Form表单提交。

  


评论


亲,登录后才可以留言!