使用Server对象的Transfer方法可以将在一个.asp文件中处理的所有信息发送到另一个.asp文件中。
语法格式:
Server.Transfer(path)
说明:参数path指定要将控制转移到的.asp文件的位置。Transfer方法也是ⅡS 6.0的新增功能,调用该方法时将停止当前页面的执行,把控制权转到path参数所指定的页面。当调用Server.Transfer时,用户的会话状态和当前事务状态也传递到新的页面,Request集合的所有内容在新的页面中也都是可用的。
下面将Server.Transfer方法与Server.Execute方法及Response.Redirect方法分别做一个比较。
Server.Transfer方法与Server.Execute方法都能够使控制从一个页面转移到另一个页面,但执行Server.Transfer方法后不再返回原来的页面,执行Server.Execute方法则重新返回原来的页面。
Server.Transfer方法与Response.Redirect方法都具有网页转向功能,但使用Server.Transfer方法只能将用户引导到同一个Web服务器上的另一个页面,而不能是其他Web服务器上的页面,使用Response.Redirect方法则能够将用户引导到同一个或另一个Web服务器的页面上;使用Server.Transfer方法在页面之间转换时,ASP内置对象的值也能够传递到新的页面,使用Response.Redirect方法则不能。
【例4.13】使用Server.Transfer方法创建用户登录页面,要求:当用户名和密码都不空时进入4-13b.asp页面,否则返回4-13a.asp页面。运行结果如图4-13所示。
图4-13 Server.Transfer方法应用示例
文件命名为4-13a.asp的代码如下:
〈%@LANGUAGE=″VBScript″ %〉
〈%
username=trim(Request .Form(″name″))
pass=trim(Request .Form(″pass″))
%〉
〈HTML〉
〈HEAD〉
〈TITLE〉登录页面〈/TITLE〉
〈/HEAD〉
〈BODY〉
〈CENTER〉
〈H2〉用户登录〈/H2〉
〈FORM name=″forml″method=″post″action=″4-13b .asp″〉
〈P〉姓名:〈INPUT type=″text″name=″name″value=〈%=username%〉〉〈/P〉
〈P〉密码:〈INPUT type=″text″name=″pass″value=〈%=pass%>> 〈/P〉
〈P〉〈INPUT type=″submit ″name=″Submit ″value=″提交″〉(www.xing528.com)
 ; ;〈INPUT type=″reset″name=″Submit2″value=″重置″〉
〈/P〉
〈/FORM〉
〈/CENTER〉
〈/BODY〉
〈/HTML〉
文件命名为4-13b.asp的代码如下:
〈%
username=trim(Request .Form(″name″))
pass=trim(Request .Form(″pass″))
If username=″″or pass=″″Then
Server .Transfer ″4-13a .asp″
End If
%〉
〈HTML〉
〈HEAD〉
〈TITLE〉谢谢登录〈/TITLE〉
〈/HEAD〉
〈BODY〉
你的用户名是〈B〉〈%=username%〉〈/B〉密码是〈B〉〈%=pass%〉〈/B〉.
〈BR〉谢谢登录!
〈/BODY〉
〈/HTML〉
通过这个例子可以看出当调用Server.Transfer时,Request集合的所有内容在新的页面中也都是可用的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。