%@ LANGUAGE="VBScript" %> <% Option Explicit %> <% Dim referers '*************************************************************************** '* ASP FormMail * '* * '* Do not remove this notice. * '* * '* Copyright 1999-2002 by Mike Hall. * '* Please see http://www.brainjar.com for documentation and terms of use. * '*************************************************************************** '* * '* Fix for .INFO email address checking 31/03/04 * '* * '* Modified for use on LCN NT hosting 27/01/03 * '* http://www.lcn.biz * '* * '*************************************************************************** '=========================================================================== '### Customization of this value is required, see documentation. referers = Array("www.xs-bass.co.uk") '### End required customization section. '=========================================================================== '=========================================================================== Response.Buffer = true Dim errorMsgs,validReferer,referer,host,recipients,name,fromAddr,subject,required,fieldOrder,body,msg errorMsgs = Array() '### Check for form data. If Request.ServerVariables("Content_Length") = 0 Then call AddErrorMsg("No form data submitted.") End If '### Check if referer is allowed. validReferer = false referer = Request.ServerVariables("HTTP_HOST") For each host in referers If host = referer Then validReferer = true End If Next If not validReferer Then If referer = "" Then call AddErrorMsg("No referer.") Else call AddErrorMsg("Invalid referer: '" & referer & "'.") End If End If '### Check for the recipients field. If Request.Form("_recipients") = "" Then call AddErrorMsg("Missing email recipient.") End If '### Check all recipient email addresses. recipients = Split(Request.Form("_recipients"), ",") For each name in recipients name = Trim(name) If not IsValidEmail(name) Then call AddErrorMsg("Invalid email address in recipient list: " & name & ".") End If Next recipients = Join(recipients, ",") '### Check that the senders email address has been supplied If Request.Form("_sendersemail") = "" Then call AddErrorMsg("Missing senders email address.") ElseIf not IsValidEmail(Trim(Request.Form("_sendersemail"))) Then call AddErrorMsg("Invalid senders email address: " & Request.Form("_sendersemail") & ".") Else fromAddr = Trim(Request.Form("_sendersemail")) End If '### Get subject text. If Request.Form("_subject") = "" Then call AddErrorMsg("Missing subject of email.") Else subject = Request.Form("_subject") End If '### If required fields are specified, check for them. If Request.Form("_requiredFields") <> "" Then required = Split(Request.Form("_requiredFields"), ",") For each name in required name = Trim(name) If Left(name, 1) <> "_" and Request.Form(name) = "" Then call AddErrorMsg("Missing value for " & name) End If Next End If '### Use the order the fields were received in. fieldOrder = FormFieldList() '### If there were no errors, build the email message and send it. If UBound(errorMsgs) < 0 Then '### Build table of form fields and values. body = "Below are the results of your feedback form." & Chr(13) & Chr(10) & Chr(13) & Chr(10) For each name in fieldOrder body = body & name & ": " & Request.Form(name) & Chr(13) & Chr(10) Next '### Send it. SendMail() '### Redirect if a URL was given. If Request.Form("_redirect") <> "" Then Response.Redirect(Request.Form("_redirect")) End If End If %>
Form could not be processed due to the following errors:
| Thank you, the following information has been sent: | |
|---|---|
| <% = name %> | <% = Request.Form(name) %> |