проверка на стороне сервера vbscript - PullRequest
0 голосов
/ 29 февраля 2012

В основном у меня есть страница с именем dvds.asp с формой, которая переходит на action="process.asp".Сценарий process.asp проверяет поля Name, Surname и Email.Мне бы хотелось, чтобы, если электронная почта не существовала, произойдет перенаправление на исходную страницу (dvd.asp), а также отобразится пользовательская ошибка.

Проверка поля электронной почты и перенаправление Я знаю, как это сделать.Единственная проблема заключается в том, как я собираюсь получить пользовательское значение ошибки в dvds.asp.

Любая помощь, пожалуйста?:)

К вашему сведению:

Я использую этот код в process.asp для проверки:

if txtEmail = "" then
Server.Transfer(Request.ServerVariables("HTTP_REFERER"))
else

Теперь ошибка, которую я хочу показатьна странице dvds.asp написано: «Пожалуйста, заполните свою электронную почту» .. Как я могу это сделать, пожалуйста?

1 Ответ

3 голосов
/ 29 февраля 2012

Трудно сказать, не видя никакого источника, (Например, как вы проверяете электронную почту? Что это за "значение пользовательской ошибки"?

Предполагая, что у вас есть функция, которая проверяет электронную почту и возвращает ложь, если она терпит неудачу и соответствующее значение ошибки равно «1», вы можете просто включить это в ваш редирект:

Dim EmailAddress
EmailAddress = Request.Form("EmailAddress")
If ValidateEmail(EmailAddress) = False Then
    Response.Redirect("dvd.asp?ErrorID=1")
End If

и на странице Origional Source вы можете просто отобразить пользователю ошибки следующим образом:

   '#### Output errors
    If Trim(Request.QueryString("ErrorID")) <> "" Then
        Select Case Request.QueryString("ErrorID")
            Case "1" ' #### Email Error
                Response.Write("<p><span style=""color: red"">Error: Invalid email address</span></p>")
            Case "2" ' #### Bad Name
                Response.Write("<p><span style=""color: red"">Error: Invalid Name</span></p>")
            Case Else
                Response.Write("<p><span style=""color: red"">Error: Unknown / Generic Error</span></p>")
        End Select
    End If

Кстати, одно небольшое предложение, для таких страниц часто предпочтительнее размещать сообщения на той же странице и включать в себя все необходимые функции электронной почты из класса / SSI. Таким образом, вы автоматически заполняете форму снова, если произошла ошибка, вместо того, чтобы ожидать, что ваш конечный пользователь повторно напечатает всю форму, если получит ошибку.

...