Creating a simple, safe contact form

If you've ever wanted a feedback or contact form on your website, you may find the following code helpful.

This code is designed to avoid common problems such as Form Post Hijacking, it also hides your email address from SPAM harvesters, and is very easy to configure.

Suggested Use
Simply create a new file called form.php, containing the code below. Be sure to replace the example email address with your own in the section marked "YOUR EMAIL ADDRESS GOES HERE". Upload the file into your web space, and you should now have a working contact form!

To integrate the code into your own existing web design, copy the code between the <body> and </body> tags into your own HTML.



            <title>Contact Form</title>


$mailTo = ""; // <----- YOUR EMAIL ADDRESS GOES HERE

if ($HTTP_POST_VARS['message']) {
$mailSubject = "Contact Form";
$mailHeaders = "From:" . ereg_replace("\r|\n", " ", stripslashes($HTTP_POST_VARS['name'])) . " <" . ereg_replace("\r|\n", " ", stripslashes($HTTP_POST_VARS['email'])) . ">\r\nX-Mailer: PHP/" . phpversion() . "\r\n";
$mailParams = "-f" . ereg_replace("\r|\n", " ", stripslashes($HTTP_POST_VARS['email']));
$mailBody = ereg_replace("\r|\n", " ", stripslashes($HTTP_POST_VARS['message']));

Thank you for contacting us.<br />

<?php } else { ?>

Contact Form<br /><br />

<form action="<?php echo $HTTP_SERVER_VARS['PHP_SELF']; ?>" method="post">
<table cellpadding="3" cellspacing="0" border="0">
    <td class="content" valign="top">
        Your Name<br />
        <input class="input" name="name" type="text" size="20" />
    <td class="content" valign="top">
        Your Email<br />
        <input class="input" name="email" type="text" size="20" />
    <td class="content" valign="top">
        Your Message<br />
        <textarea class="input" name="message" cols="30" rows="8"></textarea><br />
        <td colspan="2" align="right">
                <input class="button" type="submit" value="Send Message" />

<?php } ?>


  • 232 Users Found This Useful
Was this answer helpful?

Related Articles

What is the path to...

The following are several important paths that you may need to know when writing and...

Cron jobs

A 'cron job' is an automated task that can be set up within your cPanel. This will typically be...

The .htaccess file

What is "the .htaccess file"? The .htaccess file is one of the most powerful tools...

Disabling catch-all email

If you wish to disable the default catch-all email address - i.e. you will only receive email to...

File permissions

There are a number of file permissions, which can be used for a variety of different purposes,...