ASP中runat=server时脚本的执行顺序

rainsky120 2009-09-11 11:34:19
ASP中JavaScript和VBScript混用与runat=server时脚本语言的执行优先级
http://www.diybl.com/course/1_web/javascript/jsjs/2008324/106580.html
*********************************************************************

在ASP头部声明《%language="VBScript"%》的脚本语言环境下,《%%》代码块是先于《script SCRIPT Language="VBScript" runat="server"》代码块的----------------原因上面这篇文章说的很清楚,自己写代码测试了也确实如此,我的问题是:

在头部声明《%language="VBScript"%》条件下,我想要《script SCRIPT Language="VBScript" runat="server"》代码块先于《%%》代码块执行,这个顺序怎么控制?能调整么?
或者有其他方法能保证只有在《script SCRIPT Language="VBScript" runat="server"》代码块执行完毕之后,《%%》代码块才会被执行?

很急,谢谢各位高手先!



...全文
167 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
elainte 2009-09-15
  • 打赏
  • 举报
回复
好难哦 晕...........
toury 2009-09-11
  • 打赏
  • 举报
回复
貌似不太可能。
通常,无论从各种角度都不推荐JS/VBS混用,无论是客户端还是服务端。因为执行时解释器要不停的转换,效率很低。

是什么需求环境让你有如此的难处?不妨把你的需求说详细点
凡夫与俗子 2009-09-11
  • 打赏
  • 举报
回复
好复杂。。。
toury 2009-09-11
  • 打赏
  • 举报
回复
那你就:<%language="javascript"%>不就可以了吗?

这样,只需要对他原先混写的服务器端代码中的<% %>改为<%SCRIPT Language="VBScript" runat="server"%>不就可以让你后加的防注入先执行了吗?

貌似只有这样工作量最小
rainsky120 2009-09-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 toury 的回复:]
貌似不太可能。
通常,无论从各种角度都不推荐JS/VBS混用,无论是客户端还是服务端。因为执行时解释器要不停的转换,效率很低。

是什么需求环境让你有如此的难处?不妨把你的需求说详细点
[/Quote]

谢谢回复!

哎,最近帮朋友改一个单位的网站系统,因为其原来总是遭到SQL注入攻击,需要加一套防止SQL注入的程序进去;
我加完VBS写的防注入程序才发现,丫原来的程序居然是JS、VBS混用的!为了保证JS写的页面能正常使用,没办法防注入程序只能以《script...》这种代码块形式进行JS、VBS混用了!

这样一来就发现,防注入程序工作异常,虽然能发现危险关键字,但是却不能阻止数据库写入!
原因就是《script...》和《%%》代码块的默认执行顺序导致Response.End语句不能正常执行,导致不能执行的数据库写入语句被执行,没有实现防止SQL注入。

如果不混用,估计需要牵涉到修改数十个页面,会累死的,所以上来请教。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧