|
The script is one
from Matt's Script Archive which we have installed
and preconfigured for your domain. FormMail is
a generic www form to e-mail gateway, which will
parse the results of any form and send them to
the specified user. This script has many formatting
and operational options, most of which can be
specified through the form, meaning you don't
need any programming knowledge or multiple scripts
for multiple forms. This also makes FormMail the
perfect system-wise solution for allowing users
form-based user feedback capabilities without
the risks of allowing freedom of CGI access.
There is only one form field that you must have
in your form, for FormMail to work correctly.
This is the recipient field. Other hidden configuration
fields can also be used to enhance the operation
of FormMail on your site. The action of your form
needs to point towards this script (obviously),
and the method must be POST in capital letters.
Here's an example of the form fields to put in
your form:
<FORM METHOD=POST ACTION="http://yourdomain.com/cgi-yourdomain/formmail.cgi">
<input type=hidden name="recipient" value="whoever@yourdomain.com">
<input type=hidden name="subject" value="Order">
<input type=hidden name="return_link_url" value="http://yourdomain.com/">
<input type=hidden name="return_link_title"
value="Back to Main Page">
The following are descriptions and proper syntax
for fields you can use with FormMail.
Recipient Field
Description: This form field allows you to specify
to whom you wish for your form results to be mailed.
Most likely you will want to configure this option
as a hidden form field with a value equal to that
of your email address.
Syntax: <input type=hidden name="recipient"
value="email@yourdomain.com">
Subject Field
Description: The subject field will allow you
to specify the subject that you wish to appear
in the email that is sent to you after this form
has been filled out. If you do not have this option
turned on, then the script will default to a message
subject: "WWW Form Submission".
Syntax: If you wish to choose what the subject
is:
<input type=hidden name="subject" value="Your
Subject">
To allow the user to choose a subject:
<input type=text name="subject">
Email Field
Description: This form field will allow the user
to specify their return email address. If you
want to be able to return e-mail to your user,
I strongly suggest that you include this form
field and allow them to fill it in. This will
be put into the From: field of the message you
receive. If you want to require an email address
with valid syntax, add this field name to the
'required' field.
Syntax: <input type=text name="email">
Realname Field
Description: The realname form field will allow
the user to input their real name. This field
is useful for identification purposes and will
also be put into the From: line of your message
header.
Syntax: <input type=text name="realname">
Redirect Field
Description: If you wish to redirect the user
to a different URL, rather than having them see
the default response to the fill-out form, you
can use this hidden variable to send them to a
pre-made HTML page.
Syntax: To choose the URL they will end up at:
<input type=hidden name="redirect" value="http://yourdomain.com/to/file.html">
To allow them to specify a URL they wish to travel
to once the form is filled out:
<input type=text name="redirect">
Required Field
Description: You can require certain fields in
your form to be filled in before the user can
successfully submit the form. Simply place all
field names that you want to be mandatory into
this field, separated by commas. If the required
fields are not filled in, the user will be notified
of what they need to fill in, and a link back
to the form they just submitted will be provided.
To use a customized error page, see 'missing_fields_redirect'
Syntax: If you want to require that they fill
in the email and phone fields in your form, so
that you can reach them once you have received
the mail, use the syntax like:
<input type=hidden name="required" value="email,phone">
Env_report Field
Description: Allows you to have Environment variables
included in the email message you receive after
a user has filled out your form. Useful if you
wish to know what browser they were using, what
domain they were coming from or any other attributes
associated with environment variables. The following
is a short list of valid environment variables
that might be useful:
REMOTE_HOST - Sends the hostname making the request.
REMOTE_ADDR - Sends the IP address of the remote
host.
HTTP_USER_AGENT - The browser the client is using.
(Note: In our case, both REMOTE_HOST and REMOTE_ADDR
are the same, since our servers don't do the reverse
DNS lookup needed to generate the true REMOTE_HOST
string).
Syntax: If you wanted to find all the above variables,
you would put the following into your form:
<input type=hidden name="env_report" value="REMOTE_HOST,REMOTE_ADDR,HTTP_USER_AGENT">
Sort Field
Description: This field allows you to choose
the order in which you wish for your variables
to appear in the email form that FormMail generates.
You can choose to have the field sorted alphabetically
or specify a set order in which you want the fields
to appear in your mail message. By leaving this
field out, the order will simply default to the
order in which the browsers send the information
to the script (which is usually the exact same
order as they appeared in the form). When sorting
by a set order of fields, you should include the
phrase "order:" as the first part of your value
for the sort field, and then follow that with
the field names you want to be listed in the email
message, separated by commas.
Syntax: To sort alphabetically:
<input type=hidden name="sort" value="alphabetic">
To sort by a set field order:
<input type=hidden name="sort" value="order:name1,name2,etc...">
Print_config Field
Description: print_config allows you to specify
which of the config variables you would like to
have printed in your e-mail message. By default,
no config fields are printed to your email. This
is because the important form fields, like email,
subject, etc. are included in the header of the
message. However some users have asked for this
option so they can have these fields printed in
the body of the message. The config fields that
you wish to have printed should be in the value
attribute of your input tag separated by commas.
Syntax: If you want to print the email and subject
fields in the body of your message, you would
place the following form tag:
<input type=hidden name="print config" value="email,
subject">
Print_blank_fields Field
Description: print_blank_fields allows you to
request that all form fields are printed in the
return HTML, regardless of whether or not they
were filled in. FormMail defaults to turning this
off, so that unused form fields aren't emailed.
Syntax: <input type=hidden name="print_blank_fields"
value="1">
Title Field
Description: This form field allows you to specify
the title and header that will appear on the resulting
page if you do not specify a redirect URL.
Syntax: If you wanted a title of 'Feedback Form
Results':
<input type=hidden name="title" value="Feedback
Form Results">
Return_link_url Field
Description: This field allows you to specify
a URL that will appear, as return_link_title,
on the following report page. This field will
not be used if you have the redirect field set,
but it is useful if you allow the user to receive
the report on the following page, but want to
offer them a way to get back to your main page.
Syntax: <input type=hidden name="return_link_url"
value="http://yourdomain.com/index.htm">
Return_link_title
Description: This is the title that will be used
to link the user back to the page you specify
with return_link_url. The two fields will be shown
on the resulting form page as:
Syntax: <input type=hidden name="return_link_title"
value="Back to Main Page">
|