Трудно сказать, не видя никакого источника, (Например, как вы проверяете электронную почту? Что это за "значение пользовательской ошибки"?
Предполагая, что у вас есть функция, которая проверяет электронную почту и возвращает ложь, если она терпит неудачу и соответствующее значение ошибки равно «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. Таким образом, вы автоматически заполняете форму снова, если произошла ошибка, вместо того, чтобы ожидать, что ваш конечный пользователь повторно напечатает всю форму, если получит ошибку.