MailIt! is a free module for the Roxen and Caudium Web Servera. It allows easy formatting and mailing of HTML Form data without the need to program custom CGI scripts.

Please remember that this is a work in progress. Your comments and suggestions are appreciated. Click here to send your comments to me, the developer.

If you find this module useful, I'd greatly appreciate a postcard (or cookies:) ) from you letting me know you're out there. My address is included in the LICENSE file in the distribution.

More documentation will be arriving as I get the time. Please be patient, as I'm kept rather busy by my schoolwork!

New Version! (v1.11) December 29, 2002

What's new in Version 1.11:

What's new in Version 1.10:

What's new in Version 1.9:

What's new in Version 1.8:

What's new in Version 1.7:

What's new in Version 1.6:

What's new in Version 0.93:

What's New in Version 0.91:


Getting MailIt!

Feedback and Comments

Use this form to send me feedback or to request update notices.


The following documentation has not been updated for MailIt! version 1.11 Please see the README File for more information.

Installing MailIt!

Using MailIt! is simple! Just download the archive, then unpack it by using the following command:

	tar -zxvf mailit-1.9.tar.gz

You should get a directory called mailit-1.9. Inside that directory is a file called mailit.pike. Copy that file to your Roxen modules directory, under roxen/server/modules. Then you can use the Configuration Interface to add the MailIt! module.

There are a few options you can change, but in most cases it won't be nessecary. If your sendmail binary is in a location other than /usr/lib, you'll need to make the appropriate adjustments.

That's all there is to it! You can now start using the features of the MailIt! module.

Using MailIt!

There are 3 components of a working MailIt! application:

The HTML Form Page
You can use any text or HTML editor you'd like to create the form page. This just contains the fields that you'd like to have mailed when a user presses the submit button. The key is to set the form action to be the URL of an HTML page that uses the features of MailIt!. When designing your form, simply keep in mind the names of the various elements that you add to the form. You'll need to supply these in the Template page later.

The MailIt! Template
The MailIt! Template is simply an HTML file that includes MailIt! tags. The two tags that are provided by MailIt! are:

<mailit> </mailit> <mailheader>, and <mailmessage></mailmessage>

The first tag, <mailit> </mailit>, tells MailIt! that you are going to send an email message. Anything enclosed by these tags will not get returned to the browser. Everything outside the mailit tags will be returned to the browser as a response to the form submission.

The second tag tells MailIt! to add a header to the outgoing message.

The mailheader tag takes the following attributes:

subject=value Adds a subject line. Use this by itself.
to=value Adds a to: line in the message header. Also use this by itself.
name=headername Adds a header called headername. Can be used to create carbon copies and blind carbon copies.
value=headervalue Use with name to specify the header value.

The mailmessage container defines the body of the message to be sent. The contents of this container are parsed for RXML and the result is used as the message body. The mailmessage container takes the following argument:

encoding=endodingtype Send the message using MIME encoding. The following types are supported:

8bit, 7bit, base64, binary, quoted-printable, and x-uue.

The default encoding is 7bit, if another encoding is not specified.

You can put any RXML tags within the body of your message. The formatting between the mailit tags is preserved when it is sent as a message after parsing and inserting data.

The most current information my be found in the README file in the distribution.


Thanks to Alan Wood <> for his numerous suggestions for MailIt!, the latest of which appear in the version of the module. Thanks, Alan!

Other Resources

For those of you not running Roxen, try this CGI script by Sam Clippinger. A home page is available at .
The language that Roxen and this module are written in. Information on database support in pike is available at the Pike homepage,
Other Roxen Modules
A page of other Roxen Modules that I've written. The page is         Powered by Caudium Webserver

visitors since .