html form guide
  about

Sending form submissions to email using 'mailto:'

The simplest method to get the form submissions posted to you via email is by using "mailto:" in the action field of the form. However, this method has many drawbacks.
First let us see how we can use 'mailto' in a form.

How to set up 'mailto' in your HTML form

In the action field of the form, set the action as "mailto:youremailaddress" for example:

<form action="mailto:myforms@mydomain.com">

The sad part is that the behavior of such a form will be different in different browsers.

In Internet Explorer 6, on submitting the form it throws a message as shown below:

If you press 'Yes' then if the default email client is outlook express, outlook express is invoked and an email is sent with an attachment POSTDATA.ATT

What is POSTDATA.ATT?

When a form is submitted using the "mailto:" method, outlook express sends the submitted form data as an attachment POSTDATA.ATT. It is simply a text file and you can open it using notepad. However the file will contain the submitted form data in somewhat cryptic format.

If the form contains fields: 'Name', 'Email', 'Address' and submit, POSTDATA.ATT for a sample submission looks like this:

Name=john&Email=john@yahoo.com&Address=&Submit=Submit

How to get the form data in plain text

As you saw, it is difficult to read the POSTDATA.att. You can make the form data sent to be in readable form by making a small change in the form.

Add 'enctype=text/plain' in the form attributes. The form code becomes:

<form action="mailto:myforms@mydomain.com" enctype="text/plain" >

When this form is submitted, you will get the email in readable form. Like this:

Name=john
Email=john@yahoo.com
Address=
Submit=Submit

How to show a 'Thank You' page

You have successfully submitted the form. Now you want to show a confirmation page to the visitor that the form is submitted. Here is how to do it:

Suppose the name of the confirmation page is thanks.html Update the code for the form tag to:

<form action="mailto:myforms@mydomain.com" enctype="text/plain" onsubmit="location.href='thanks.html';" >

How to customize the subject of the email

By default, the subject of the email that you receive from such a form will read something like: "Form posted from Microsoft Internet Explorer"
The following code shows the change:

<form action= "mailto:myforms@mydomain.com?subject=myform_submission" enctype="text/plain" onsubmit="location.href='thanks.html';" >

Drawbacks of 'mailto' email form

We have seen that using mailto is simplest way to get your HTML form submissions via email.
However, there are many disadvantages for this method.

  1. Your visitor must have Internet Explorer as the browser and Outlook Express as the default client for this to work correctly.

  2. Even if your visitor is using Internet Explorer, but the default mail client is different, your mailto form will not work.

  3. Even if your visitors have IE and has configured Outlook Express as default mail client, they may press cancel on the warning dialog that pops up.

  4. According to the HTML specifications, the action field of the form should be a correctly formed HTTP URL. So 'mailto:' is not valid for the action field.

Use a form mail script

The only consistent alternative to ensure that you get the email form the form submissions is to use a form mail script.
See: Using form mail scripts

  • Digg
  • del.icio.us
  • Netscape
  • Reddit
  • StumbleUpon
  • Technorati
  • YahooMyWeb


Related pages

 
  • Digg
  • del.icio.us
  • Netscape
  • Reddit
  • StumbleUpon
  • Technorati
  • YahooMyWeb
Email forms
  How to get email from html form submission

Email form using 'mailto'

Form to email using PHP

Email form with file attachment in PHP

Form mail scripts
  Form mail script selection guide

Perl based form mail

Contact Forms
  PHP based email contact form

Secure your HTML contact form using captcha
PHP Form
  PHP form validation script

PHP form tutorial: first steps

PHP form processing

PHP form 'GET'

PHP form 'POST'

Handling checkbox in PHP form processor

Handling select box in a PHP form

Using PHP_SELF in the action field of a form

How to submit a form using PHP

Creating a registration form using PHP

Making a login form using PHP

Creating a multi-page order form using PHP

Passing PHP form variables from one page to other

  Copyright © 2008 html-form-guide.com . All rights reserved.