Title: Dimke's Contact Form
Picture: Dimke's Contact Form Screenshot
Explanation: Send email messages from an html email form on your web page without showing your real email address.
Select the recipient you want to send your email to from a list of names.
The only information visible to the visitor of your web page is the list of names. The email addresses beyond are not present in the html form, but instead they are stored securely in the Perl script, which the visitor can execute but which s/he cannot read i.e. display.
This protects you from getting spam because even if the sender clicks on "send me a copy of this message" your real email address will not be contained in the message the sender gets.

So this project is, in simple, an advanced version of "Dimke's Email Form", with the difference that the user can chose between more than 1 recipient.

Working example

How it works: The email form is written in simple html. So you can either copy it and load it from your page using a link to it, or, you can copy the source code into an existing page.
When clicking on "Send" this email form calls a Perl script which first checks if every field is filled out correctly.
This version uses "taint checking" which means that it is "hacker proof".
The next step is invoking Unix sendmail to deliver the email to your address.
Finally the sender gets a dynamically generated html page which says that the email has been sent.

SECURITY issue:
Unlike buggy applications like "formmail.pl" et alii, "Dimke's Contact Form" checks the email address passed to it - for details have a look to the source - for causality. This is accomplished by counting the total number of occurences of the "@" - character, which has to be there exactly once, as well as the dot, which may occur once or more times, to be a valid email address.
So, if a "spammer" tries to pass hundreds of email addresses from "spamming victims" to "Dimke's Contact Form", this data will simply be refused!

How to use: Unpack the zip file and copy the html email form into your html documents' directory. Then copy the Perl script into your local cgi directory and set the variables like the system path to sendmail / qmail, your email address, the background you want to be loaded etc. in the html page as well as in the Perl script.
Be sure that the html page is readable for Apache and the Perl script is set to be executable (chmod it at least to 111).
Be sure the information you provide in the html form matches the names you specify in the Perl scipt's hash table. Otherwise the Perl scipt cannot determine which recipient you want the email to be sent to
Download Source: kontakt.zip
[Developer Root] [Main Page]