### ASP 设计常见问题及解答精要 6

20、问题：为什么使用strStartPort=(Request.Form ("catmenu_0")语句取到表单中起始站点的值在数据库却找不到？
答：这是因为取到的起始站点的值可能有空格，比如原意是“杭州”，但是由于空格存在，ASP程序取到的值可能就是“　杭州”，而数据库中只有“杭州”的记录，当然就找不到了，解决的方法是利用Trim 函数将字符串两头空格全部去除，相应的语句为：
strStartPort=TRIM(Request.Form("catmenu_0"))
21、问题：在ASP中当变量的生命周期结束后，有几种保留变量内容的方法？
答：任何导致网页结束的操作，比如当按下浏览器的“刷新”按钮，或者关闭了浏览器，再重新打开它，都会导致变量生命周期的结束。
如果希望在网页结束执行时，还能够保留变量的内容，以备下一次执行时使用，就可以借助Application对象来实现。比如可以利用Application对象来制作统计网站访问量的计数器。
Session对象跟Application对象一样，可以在网页结束时将变量的内容存储下来，但是与Application对象不同的是，每个联机是一个独立的Session对象，简单地说就是所有联机上网者只会共享一个Application对象，但每位联机上网者却会拥有自己的Session对象。
Application对象与Session对象可以帮我们把信息记录在服务器端，而Cookies对象则会借助浏览器提供的Cookies功能将信息记录在客户端。有一点要注意，Cookies是记录在浏览器的信息，所以数据的存取并不象存取其他ASP对象（信息存储在Server端）那么简单，就实际运行来看，只有在浏览器开始浏览Server的某一网页，而Server尚未下载任何数据给浏览器之前，浏览器才能够与Server进行Cookies数据的交换。
22、问题：对象使用完后应该怎么办？
答：当使用完对象后，首先使用Close方法来释放对象所占用的系统资源；然后设置对象值为“nothing”来释放对象占用的内存，否则会因为对象太多导致WEB服务站点运行效率降低乃至崩溃，相应语句如下：
<　%
对象.close
set对象= nothing
%　>