Asp classic 在数据库中混合存储ASP VBScript和HTML

Asp classic 在数据库中混合存储ASP VBScript和HTML,asp-classic,Asp Classic,我正试图摆脱应用程序的HTML文件,并将其内容存储在数据库中。问题是,这些文件中混合了经典的ASP/VBscript代码和HTML 例如,除了常规HTML之外,还有如下内容: Your name is <%=sYourName%> 您的名字是 及 废话废话 从数据库中提取并输出到浏览器时,ASP/VBScript代码不会被解析,因此会显示为常规文本 所以我的问题是,有没有一种方法可以将这个ASP/HTML混合存储在数据库中,并将正确的输出输出到浏览器 谢谢 首先,让我向发出警

我正试图摆脱应用程序的HTML文件,并将其内容存储在数据库中。问题是,这些文件中混合了经典的ASP/VBscript代码和HTML

例如,除了常规HTML之外,还有如下内容:

Your name is <%=sYourName%>
您的名字是


废话废话

从数据库中提取并输出到浏览器时,ASP/VBScript代码不会被解析,因此会显示为常规文本

所以我的问题是,有没有一种方法可以将这个ASP/HTML混合存储在数据库中,并将正确的输出输出到浏览器


谢谢

首先,让我向发出警告,不要这样做

ASP需要一个文件来处理ASP脚本,无法从数据库中读取文本,然后直接将其作为ASP脚本执行

但是,您可以从数据库中读取文本并将其写入网站物理文件夹下的临时文件,然后使用用户
服务器。执行
以运行它。(编辑或参考您在问题注释中的说明,您可以将XSL输出到文件,然后服务器执行该文件)


也就是说,这似乎是一件疯狂的事情。暴露于恶意使用本身使得从一开始就不明智。我也不确定这比一开始就有物理文件有什么好处

首先,让我向发出警告,不要这样做

ASP需要一个文件来处理ASP脚本,无法从数据库中读取文本,然后直接将其作为ASP脚本执行

但是,您可以从数据库中读取文本并将其写入网站物理文件夹下的临时文件,然后使用用户
服务器。执行
以运行它。(编辑或参考您在问题注释中的说明,您可以将XSL输出到文件,然后服务器执行该文件)


也就是说,这似乎是一件疯狂的事情。暴露于恶意使用本身使得从一开始就不明智。我也不确定这比一开始就有物理文件有什么好处

如何将数据从数据库中取出并发送回浏览器?通常人们使用ASP来查询数据库数据并构建HTMLASP,HTMLASP用于从数据库中提取数据,直接调用存储过程。“数据”部分(即动态内容)是XML,使用XSL将其转换为变量。这些变量然后以HTML格式输出,如上面的示例所示。我建议您回顾一下XSL生成ASP的想法(注意“上面的示例”不是HTML而是ASP)。将脚本方面引入XSL,有许多选项可以帮助实现这一点。XSL自己的(但有限的)“流控制”,MSXML允许在XSL中嵌入脚本代码,如VBScript,以提供执行更复杂任务的函数。MSXML还允许外部名称空间引用XSL外部定义的函数。如何从数据库中提取数据并发送回浏览器?通常人们使用ASP来查询数据库数据并构建HTMLASP,HTMLASP用于从数据库中提取数据,直接调用存储过程。“数据”部分(即动态内容)是XML,使用XSL将其转换为变量。这些变量然后以HTML格式输出,如上面的示例所示。我建议您回顾一下XSL生成ASP的想法(注意“上面的示例”不是HTML而是ASP)。将脚本方面引入XSL,有许多选项可以帮助实现这一点。XSL自己的(但有限的)“流控制”,MSXML允许在XSL中嵌入脚本代码,如VBScript,以提供执行更复杂任务的函数。MSXML还允许外部名称空间引用XSL外部定义的函数。+1我同意Anthony的观点,这似乎是一件很奇怪的事情,请不要误会,您提供的asp页面可以使用eval()和Execute()等方法从SQL解析asp但你也可以弯腰向安全部门挥手告别——我能想到这样做的唯一原因是某种CMS?(也就是说,开源CMS phpfusion允许将php存储在数据库中,但只有管理员有权更改此信息-但是,如果您不100%信任所有管理员/内容作者,那么这是一件非常危险的事情)。@HeavenCore:Eval和Execute只适用于纯VBScript,你不能在包含HTML内容的代码中使用它们。谢谢Anthony-这正是我所期待的,基于我所读的内容,但我想知道是否还有另一个我没有找到的选项(这是安全的,不涉及写入临时文件)。+1我同意Anthony的观点,这似乎是一件很奇怪的事情,不要误解我,您的服务asp页面可以使用eval()和Execute()等方法从SQL解析asp,但您也可以弯下腰,挥手告别安全性-我想到这样做的唯一原因是某种CMS?(也就是说,开源CMS phpfusion允许将php存储在数据库中,但只有管理员有权更改此信息-但是,如果您不100%信任所有管理员/内容作者,那么这是一件非常危险的事情)。@HeavenCore:Eval和Execute只适用于纯VBScript,你不能在包含HTML内容的代码中使用它们。谢谢Anthony-这正是我所期待的,基于我所读的内容,但我想知道是否还有另一个我没有找到的选项(这是安全的,不涉及写入临时文件)。
<% If .... Then %>
<p>blah blah blah</p>
<% End If %>