【问题标题】:response redirect previous page classic asp响应重定向上一页经典asp
【发布时间】:2014-06-04 21:41:46
【问题描述】:

如果在引用页面上输入错误的验证码,我想返回几个可能的页面之一。这就是我正在尝试的,它只是在出现错误时绕过重定向并将它们带到成功页面。如果我输入 response.redirect("somepage.asp") 它没有问题,但我需要它来处理多个页面引用

Call ValidateCAPTCHA()
If m_CAPTCHAPASS<>1 then
Session("ValidCAPTCHA")="false"
Dim redirectpage
redirectpage = Request.ServerVariables("HTTP_REFERER") & "e=1" 
Session("FirstName")=Request.Form("First_Name")
Session("Phone")=Request.Form("Phone")
Session("EMail")=Request.Form("EMail")
Session("Comments")=Request.Form("Comments")
response.redirect(Request.redirectpage)
end if
'send email script follows

【问题讨论】:

  • 你能验证Request.ServerVariables("HTTP_REFERER")里面的内容吗?只需将其输出到页面即可。
  • 好吧,我发现我的错误....与附加 e=1 的推荐人应该是 ?e=1...现在的问题是,在使用错误的验证码多次提交后,它一直在附加参数: somesite.com/referringpage.asp?e=1 然后变成somesite.com/referringpage.asp?e=1?e=1 等等

标签: vbscript asp-classic response.redirect


【解决方案1】:

根据您的评论,为防止添加多个参数,只需检查参数是否已添加。比如:

Dim redirectpage

redirectpage = Request.ServerVariables("HTTP_REFERER") 
If Right(redirectpage, 4) <> "?e=1" Then redirectpage = redirectpage & "?e=1"
'.... the rest of the code

【讨论】:

    猜你喜欢
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多