Confused by HTML online inquiry form

Jumpstart

Regular Member
Joined
Nov 21, 2009
Messages
444
Reaction score
76
Points
28
Age
47
My Satellite Setup
Motorised dish
My Location
North East
Hi

I want to post an inquiry form on my website. So I obtained this very simple one.


<form action="" method="POST" enctype="multipart/form-data">
<input name="action" value="submit" type="hidden"> Your name:<br>
<input name="name" size="30" type="text"><br> Your email:<br>
<input name="email" size="30" type="text"><br> Your message:<br>
<textarea name="message" rows="7" cols="30">
</textarea><br>
<input value="Send email" type="submit">
</form>



I am however confused. There is no option to put the email address where the message is going, so it just goes back to the main page.

Any help appreciated.

Thanks. :)
 

smoggy07

Regular Member
Joined
Aug 20, 2008
Messages
945
Reaction score
384
Points
63
Age
40
My Satellite Setup
Sky minidish and Sky + HD 250gig Anytime+ box with full ish appart from sports and movies, Dreambox DM500s clone (Pli Jade3 max var F/W), Motorised 1.1Meter Dish
My Location
middlesbrough, teesside, northeast coast, uk
add this in place of your code above

Code:
<form name="contactform" method="post" action="send_form_email.php">

<table width="450px">

<tr>

<td valign="top">

<label for="name">Name*</label>

</td>

<td valign="top">

<input  type="text" name="name" maxlength="50" size="30">

</td>

</tr>


<tr>

<td valign="top">

<label for="email">Email Address *</label>

</td>

<td valign="top">

<input  type="text" name="email" maxlength="80" size="30">

</td>

</tr>

<tr>

<td valign="top">

<label for="comments">Comments *</label>

</td>

<td valign="top">

<textarea  name="comments" maxlength="1000" cols="25" rows="6"></textarea>

</td>

</tr>

<tr>

<td colspan="2" style="text-align:center">

<input type="submit" value="Submit">
</td>

</tr>

</table>

</form>

then make a new php page, name it "send_form_email.php" and add the following code to it, changing "you @ yourdomain . com" to your email and "Your email subject line" to what ever you want

Code:
<?php

if(isset($_POST['email'])) {



// EDIT THE 2 LINES BELOW AS REQUIRED

$email_to = "you@yourdomain.com";

$email_subject = "Your email subject line";





function died($error) {

// your error code can go here

echo "We are very sorry, but there were error(s) found with the form you submitted. ";

echo "These errors appear below.<br /><br />";

echo $error."<br /><br />";

echo "Please go back and fix these errors.<br /><br />";

die();

}



// validation expected data exists

if(!isset($_POST['name']) ||

!isset($_POST['email']) ||

!isset($_POST['comments'])) {

died('We are sorry, but there appears to be a problem with the form you submitted.');

}



$first_name = $_POST['name']; // required

$email_from = $_POST['email']; // required

$comments = $_POST['comments']; // required

$error_message = "";

$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';

if(!preg_match($email_exp,$email_from)) {

$error_message .= 'The Email Address you entered does not appear to be valid.<br />';

}

$string_exp = "/^[A-Za-z .'-]+$/";

if(!preg_match($string_exp,$name)) {

$error_message .= 'The Name you entered does not appear to be valid.<br />';

}

if(strlen($comments) < 2) {

$error_message .= 'The Comments you entered do not appear to be valid.<br />';

}

if(strlen($error_message) > 0) {

died($error_message);

}

$email_message = "Form details below.\n\n";


function clean_string($string) {

$bad = array("content-type","bcc:","to:","cc:","href");

return str_replace($bad,"",$string);

}


$email_message .= "First Name: ".clean_string($name)."\n";

$email_message .= "Email: ".clean_string($email_from)."\n";

$email_message .= "Comments: ".clean_string($comments)."\n";



// create email headers

$headers = 'From: '.$email_from."\r\n".

'Reply-To: '.$email_from."\r\n" .

'X-Mailer: PHP/' . phpversion();

@mail($email_to, $email_subject, $email_message, $headers);

?>

<!-- include your own success html here -->



Thank you for contacting us. We will be in touch with you very soon.



<?php

}

?>

upload the .php file to the same directory as your contact form and you should be good to go

The above is a working example but you'll need to add a captcha or something to beat the spammers
 

Jumpstart

Regular Member
Joined
Nov 21, 2009
Messages
444
Reaction score
76
Points
28
Age
47
My Satellite Setup
Motorised dish
My Location
North East
THANKS! :D I will give it a try.

Many thanks again. Much appreciated. :)
 
Top