出于某种原因,如果我的include在if语句中,它确实有效。我得到了
500 - 内部服务器错误。您的资源存在问题 正在寻找,它无法显示。
但我在外面包含相同的行,如果它呈现正确并显示表单。我错过了什么吗?
<% elseif EmailError <> "?" then %>
<p class="StdParaHead">Can't Send Message</p>
<p style="color:red;font-weight:bold">Please fill in
<%if EmailError="NameBlank" then
Response.Write "your name"
ElseIf EmailError = "EmailBlank" OR EmailError = "InvalidEmail" then
Response.Write "a valid e-mail address"
ElseIf EmailError = "LocationBlank" then
Response.Write "your City and State"
ElseIf EmailError = "BadSecurity" then
Response.Write "the proper security information"
End if
%></p>
<p>clause1 </p>
<!--#include virtual="/includes/Content/ContactFormNew.inc"--> /* does not work here */
<% else %>
<p class="StdParaHead">Sorry...</p>
<p>Due to an uncertain error, your message could not be sent at this time. Please see our <a href="contact.asp">contact information</a> for other ways to contact Axiom Valuation Solutions, or try again later.</p>
<p><a href="/newlook/newsite/default.asp">Home</a></p>
<p> CLAUSE 2</p>
<!--#include virtual="/includes/Content/ContactFormNew.inc"--> /* does not work */
<%end if%>
<!--#include virtual="/includes/Content/ContactFormNew.inc"--> /* works here */
答案 0 :(得分:0)
所以我最好的猜测是你在“ContactFormNew.inc”中定义了一些变量。
因为你不能“动态地”包含像你试图做的那样的文件包括两次。
这是因为包含是在解释任何ASP代码之前完成的,并且“ContactFormNew.inc”的内容被注入两次(在elseif end else块中)。
所以文件包含两次然后错误就是你定义了两次相同的变量...