FormHandler Module Documentation

By Herman Suijs
These are the modules for the FormHandler PHP Mailscript. The message-modules are usable by any of the other modules to store specific kinds of messages.

The other modules are dynamically loadable (unless stated in the configfile.inc.php*). The modules can be loaded dynamically by using one of the options (AUTO_CONFIG) or bij listing them in the config option with the name mentioned in the def.xml file (= the beginning of the filename (i.e. for errortemplate.mod.php use errortemplate).

You can use the options in a form:

<input type="hidden" name="[option]" value="[value]">

Of course, you don't have to use type hidden. It also possible to use type checkbox to give anybody the option to turn an option on or off. But be carefull with some options (like recipient), because they make the script vulnerable for using it as a spam source. (see Readme.Security).

Another way of using the options is through the configfile. The configfile-option needs to be in the form, but any other option can be placed in the specified file. (a config file should be in de config/ dir, or otherwise configured in configfile.inc.php).

  • Required modules: *
  • Required options: *
    Messagename
    DebugMessage (debug.mes.php) *  
    DebugMessage (debugdummy.mes.php) *  
    ErrorMessage (error.mes.php) *  
    LogMessage (log.mes.php) * Not tested yet
    Modulename Option Aliases Value Function
    ConfigModule (config.mod.php) * config modules, extra_modules a list of modules (seperator defined in configfile.inc.php) The defined modules need to be loaded in.
    configfile config_file a file that exists in the config/ directory (change in configfile.inc.php) This file can contain options to configure the script for any form. The options in the form will override the options in this config-file.
    DebugModule (debug.mod.php) * debug   0/1 or false/true This option will dynamically set debugging on or off. This option can be set in the configfile or in the form.
    noop   0/1 or false/true This option will turn on/off the functionality of the modules. Checks are all performed, but the actual execution of the modules is prevented.
    level debuglevel, debug-level, debug_level number (see config.inc.php for all debuglevels) The level of the debug-messages to print
    DisplayModule (display.mod.php) * display_view display_show   nothing yet (fields to show in the output)
    redirect sent, send, return_url_link URL The url to redirect the screen to after the form has been succesfully submitted. Another way of dealing with the output screen is the use of templates. This way you can use the entered values in the return-screen. (see DisplayTemplate).
    printblank showblank, print_blank_fields   nothing yet (omit blank fields in the output)
    DisplayTemplateModule template displaytemplate, displayfile, templatedisplay a file that exists in templates/ (defined in configfile.inc.php) A template file that should be the output screen. In the template you can use the values from the input and configuration. Look at the examples or the homepage of the template-routine
    DutchCheckModule (dutchcheck.mod.php) [same options as FieldCheckModule] see FieldCheckModule   Just 5 checks: telefoon, fax, postcode, tijd en datum. If you use these names for input-fields, the fields are automatically checked. This is a child of FieldCheckModule. It will do whatever FieldCheckModule does and extends this functionality. So if you include this module, you don't need FieldCheckModule.
    EnvModule (env.mod.php) env env_report List of environment variables All variables mentioned will be displayed in the mail. The variables to use are defined on www.php.net. The default variables to show are defined in configfile.inc.php
    ErrorTemplateModule (errortemplate.mod.php) error errortemplate, errorfile A file that exists in templates. A template file that should be the error screen
    FieldCheckModule (fieldcheck.mod.php)       Checks the following fields against regular expressions: email, url, time, date, phone, zipcode
    check (not yet) newcheck A name seperated from a regular expression The field with given name will be checked against the regular expression (instead of completely extending the FieldCheckModule, like this module does).
    LogModule (log.mod.php) log   0/1 or false/true Turn logging on or off
    noop   0/1 or false/true This option will turn on/off the functionality of the modules. Checks are all performed, but the actual execution of the modules is prevented.
    level loglevel, log-level, log_level number (see config.inc.php for all loglevels) The level of the log-messages to print
    MailModule (mail.mod.php) * recipient to emailaddress The input of the form will be sent to this mailaddress
    subject onderwerp Line of text The subject for the mail that is sent
    cc copy mailaddress Other address(es) that should be mailed.
    bcc blindcopy mailaddress Other address(es) that should be mailed, but not visible to others.
    from address Mailaddress (+ name) Address where the mail is coming from. This will be the address people use when they send a reply (on the mail send to the recipient of the form).
    mailheader mailheaders Valid SMTP mailheaders For extra SMTP settings in de headers (maybe a confirm reading or whatever).
    MailAttachModule (mailattach.mod.php) All options from MailModule     This module is a child of MailModule and implements all parent options.
    attachsystemname   name-string (only characters and without spaces) This string (if used) must match the name of input field with type=file.
    attachment (or whatever name is in attachsystemname) [This option MUST be in an input field with type=file] [This type will automatically define a fileupload-box]  
    attachment_type mimetype, mime_type File MIME-type You can give the MIME-type of the file
    MailTemplateModule (mailtemplate.mod.php) mailtemplate mailfile, templatemail Filename (file must exist in templates/) A template file for the outgoing mail.
    RefererCheckModule (referer_check.mod.php) allow referer_allow hostnames/ipaddresses seperated by : (see configfile) These hostnames or addresses are the only ones allowed to use the mailscript. This only works when the option is in a config-file, because anybody can make a new form to use the script. In a new version this option will check if people are allowed to fill in the form.
    deny referer_deny hostnames/ipaddresses seperated by : (see configfile) These hostnames or addresses are not allowed to use the mailscript. This option will change see allow.
    allowfile referer_allowfile filename This file (in config/) contains hostnames, ip-addresses and wildcards on every line. If an allowfile is used, the noted hostnames and addresses are the only ones that can use the script. Set this to the hostnames or ip-addresses of sites where you install forms that use this script. Only use this option in a config-file. (not yet done).
    denyfile referer_denyfile filename This file (in config/) contains hostnames, ip-addresses and wildcards on every line. If an denyfile is used, the noted hostnames and addresses are denied of using the script you installed. Only use this option in a config-file. (not yet done).
    ReplyModule (reply.mod.php) reply (DEPRICATED) courtesy_reply anything When this option is available the ReplyModule is loaded. If not, even if the module is loaded, it will be unloaded.
    email e-mail, mail, emailaddress, e-mailaddress, mailaddress, email-address, mail-address, mailadres An email-address The mailaddress filled in by the visitor, to which a mailmessage should be sent. If this option/field is not found the module will be unloaded.
    reply_subject courtesy_reply String The subject field of the reply-mail
    reply_from courtesy_from, reply_address, replyaddress email The address that should be the sender of the reply-mail. The visitor will send mail to this address if he/she replies to the mail.
    replyheader replyheaders SMTP headers Extra headers to configure the reply mail.
    replycontent reply_content, replytext, reply_text Text This is the text of the mail that is sent as a reply. This will be overwritten if a ReplyTemplate is used.
    ReplyTemplateModule (replytemplate.mod.php) replytemplate replyfile, templatereply a file that exists in templates/ (defined in configfile.inc.php) A template file that should define the mail to send as a reply
    RequiredModule (required.mod.php) required require Fieldnames used in the form seperated by , These fieldnames are checked for input. If the visitor did not fill in these fields, an error message will be displayed on submit.
    SetCookieModule (setcookie.mod.php) cookie cookies, cookiefields List of inputfields All the fields in the list will be checked and their values will be set in cookies in the browser of the visitor. The form can contain PHP-code to redisplay the already entered values of the visitor, each time he/she visits the form.