PHPMailer-FE = PHPMailer Formmail Edition or Form-to-Email
****************************************************************************
BEFORE YOU CONTINUE READING:
- read the README_FIRST.txt file, it contains important information about
  documentation
- the phpmailer-fe.php is in the /_lib folder
- the /sample_forms/ folder contains three examples, each with external
  configuration file examples, and sample landing pages as well as sample
  reply emails.
****************************************************************************
 -- we now have a support forum for PHPMailer-FE and PHPMailer-ML at
    http://www.worxware.com/forum/
****************************************************************************
PHPMailer-FE is an HTML form to e-mail gateway that parses the results of
any form and sends them to the specified recipient(s). This script has many
formatting and operational options, most of which can be specified in each
form. You don't need programming knowledge or multiple scripts for
multiple forms. PHPMailer-FE also has security features to prevent users
from including URLs in fields containing "url" in the field name.
PHPMailer-FE was written to be compatible with Formmail.pl and Formmail.php
and has many of the features of the Perl script Soupermail.
PHPMailer-FE works with the leading Email Transport Class: PHPMailer. It
does not, however, require PHPMailer. PHPMailer-FE will use PHPMailer if
found. If not found, PHPMailer-FE will use the native PHP mail() function.
There is a distinct advantage to using PHPMailer - emails will be sent
in both text and HTML formats with PHPMailer and text-only with the native
PHP mail() function.
Please note that the samples that are included assume you will use PHPMailer.
If not, please modify the samples for text-only emails.
Features:
- support for using PHPMailer as the mail transport ( if not found, will use
  PHP mail() ). With PHPMailer, the email is constructed in multi-part with
  both HTML and text. Without PHPMailer, the email is constructed in text.
- support for ban list ... protects against URLs injected into any field
  that contains "comment" in the field name. There is nothing more annoying
  than putting up a contact us form and having it used by purveyors of porn
  and other junk. This feature will eliminate these emails. The first time
  a spammer uses your form with URLs, 1) their IP and Remote Host will be
  stored in your ban list log file, 2) they will be redirected back to your
  home page, and 3) their submission will be discarded. Future attempts to
  submit the form will result is a rejection message.
- support for redirect when a banned submission is detected. Custom create
  your own ban "landing" page.
- able to send multiple file attachments without storing the files in the
  server. As of version 4.0, there is no restriction on the form field naming.
- support for Reply emails on both successful form submission and in the event
  of a failed form submission - the reply emails can be completely customized
  on a form-by-form basis
- support for different landing pages on both successful form submission and
  in the event of a failed form submission - landing pages can be unique to
  each form
- support for External Configuration files to override form-passed variables
  and variables (or settings) in the main script. The External Configuration
  files can also pre-process form field math (additing fields, as an example)
- support for calculations in the configuration files.
  For example, you can also use this External Configuration capability to perform
  math on your form. Here's an example. Let's say that you have an form that generates
  pricing based on quantity. Your two form fields then would be "frmQty_1" and
  "frmUnitPrice_1" and "frmQty_2" and "frmUnitPrice_2". To derive the extended price,
  you could use this code:
  $_POST['extPrice_1'] = $_POST['frmQty_1'] * $_POST['frmUnitPrice_1'];
  $_POST['extPrice_2'] = $_POST['frmQty_2'] * $_POST['frmUnitPrice_2'];
  ... and then PHPMailer-FE will process those new "extPrice" form variables.
  Another example is concatenating. Here's an example:
  $_POST['subject'] = 'Share Your Story, by ' . $_POST['title'] . " " . $_POST['realname'];
  - calculations can be performed on derived data.
- $useAsAutoResponder is another new feature of PHPMailer-FE (default value is false)
  PHPMailer-FE is also a robust Auto-Responder that supports sending an attachment
  to your users. If you want to use it purely as an auto-responder and and not send
  the form results to $recipient, use the setting:
  $useAsAutoResponder = true;
  You can still use PHPMailer-FE as an Auto-Responder with the setting set to false,
  the only difference is that with a value of false, the $recipient will get the form
  contents. Also note that you can add any attachment in the form you display on your
  site to receive attachments from your users ... this AUTO-RESPONDER capability lets
  you store files on your server to send to your users. The way to use that is to put
  two fields in your "form".config.php file:
  $_POST['attach_local_name'] = "/path/to/document.pdf";
  $_POST['attach_local_type'] = "application/pdf";
  (you can get a listing of mime types at http://www.webmaster-toolkit.com/mime-types.shtml).
Other features:
- minimal configuration needed. Essentially all you need to do is change one
  single variable ("recipient"), put the script on your server, and direct
  your form to the script in the form's action directive. The script handles
  everything else. Of course, there are many other optional settings and
  features. Take advantage of them all for a superb, safe and stable
  form mailer solution. In minimial configuration, no other file (config, etc.)
  is required - only the phpmailer-fe.php file.
- Simple licensing (LGPL) and we encourage you to use the script in your
  own applications, including commercial packages. There is NO requirement
  to display any messages for us, although that would be very much appreciated.
Three sample forms are included.
If you haven't done so yet, please download the latest version of PHPMailer or
PHPMailer Lite to use with PHPMailer-FE.
Enjoy!
Andy Prevost
codeworxtech@users.sourceforge.net
PS. Our company, Worx International Inc., handles outsourcing as well as custom
development projects. We consult and work on projects small and large making
the internet a safer place. Our passion is to engage the user in a compelling
internet experience AND reduce the time to live with simple and effective
software tools and components. Contact us today for any project.
We do offer a Remote Forms Processing service. This service offers additional
features:
  - data validation in real time (data validation can include Turing test)
  - CSV log of all submissions (can be sent daily, weekly, monthly)
    - in addition to the emails
  - forms and form processing are remote and on our highly secure servers
  - use your forms, or we design for you
  - forms hosted on our server also feature email address encoding (no email
    harvesters)
  - forms hosted on our server also will not be picked up by search engines
  - Turing test functionality at the client and the server side