• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

关于include---自己的一些经验

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网 关于include本论坛里已经有一些文章谈论过了,也有不少网友还在谈论这个问题,在这里想说一些自己在实践中曾经遇到过的问题和解决方式。
  先从include的运行方式说起,顾名思义,include——包含,它只是一个包含的作用,并不进行编译(翻译)
第一种错误
   举个例子
       例1:
conn.asp  
<%
  dim conn
  set conn=Server.CreateObject("adodb.connection")
   conn.open "Provider=SqlOledb;DataBase=Cos;Uid=jielon;Pwd=123Z"
response.Write "ok"
%>
conn1.asp
<%
  dim conn
  set conn=Server.CreateObject("adodb.connection")
   conn.open "Provider=SqlOledb;DataBase=Cos;Uid=jielon;Pwd=123Z"
   dim rs
   set rs=server.CreateObject("adodb.recordset")
   rs.ActiveConnection=conn
   rs.Source="select * from ttt"
   rs.Open
   do while not rs.EOF
   response.Write rs(1)
   rs.MoveNext
   loop
   rs.Close
%> <!--#include file="conn.asp"-->
运行conn1.asp时会提示:
Microsoft VBScript 编译器错误 错误 ‘’800a0411‘’
名称重定义
/conn.asp,行2
dim conn
----^
出错原因:
执行conn1.asp的步骤是:
1.包含:<%
  dim conn
  set conn=Server.CreateObject("adodb.connection")
   conn.open "Provider=SqlOledb;DataBase=Cos;Uid=jielon;Pwd=123Z"
   dim rs
   set rs=server.CreateObject("adodb.recordset")
   rs.ActiveConnection=conn
   rs.Source="select * from ttt"
   rs.Open
   do while not rs.EOF
   response.Write rs(1)
   rs.MoveNext
   loop
   rs.Close
%>
<%
  dim conn
  set conn=Server.CreateObject("adodb.connection")
   conn.open "Provider=SqlOledb;DataBase=Cos;Uid=jielon;Pwd=123Z"
response.Write "ok"
%>
2.编译(翻译)开始
所以有重命名的错误
第二种错误:
a include b,b include a
出现错误提示:
Active Server Pages 错误 ‘’ASP 0135‘’
循环包括
/conn.asp,行7
文件 ‘’conn1.asp‘’ 包括它本身 (可能非直接地) 。请检查包含文件中的其他 Include 语句。
第三种错误:
<!--#include file=<%=a.asp%>à
或者
<%……
t="a.asp"
……%>
<!--#include file=<%=t%>à

这里它找的是<%=a.asp%>


以上这些,感觉用asp事务处理很方便:
<%@ transaction=required%> ‘-----必须放在第一行
….your code ……
<% server.execute(transfer) “a.asp”%> ‘----可以包含的页面或者使用的页面
顾名思义,它的作用是直接运行

对于第一个错误,他没有问题
第二个错误,只要他不运行有<%@ transaction=required%>的页面,也不会出现错误提示,但结果是循环的格式
对于第三个错误,<%server.execute t%>也没有问题
所以利用asp事务处理解决值一类问题感觉还是比较好的

对于初学的人来说,也许可能这样想:
  response.redirect “a.asp”
  response.redirect “b.asp”
想利用两个页面进行某个处理,但是这样已经把叶面控制权转移
这也可以利用asp事务进行处理

唯一的缺憾是——我看了一些资料,但是对于<%server.execute “a.asp?kk=df”%>这样的处理,还没有解决,我运行时产生:
  服务器对象 错误 ‘’ASP 0231 : 80004005‘’
Server.Execute 错误
/conn2.asp,行19
无效的 URL 表单或是合格的 URL 已被使用。使用相关的 URLs。
但有些书中好像有这种用法,不知什么原因,希望得以指教


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网