Creating an HTML form to send with mail() function in godaddy?

900 views Asked by At

OK. I have no idea. I used to be able to point to their backend form thing but now they tell me I have to do the mail() function... I created the form in Dreamweaver and it looks great. But that's about it. I thought I tied it to the php file but when you click submit it opens a new window and looks like it tries to open the php instead of use it to send the form results to my email.

Link to page (I can't get the code to past without errors): http://rivieradecor.co/contact_riviera_decor.html

Link to php: http://rivieradecor.co/send_form_email.php

 

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

// EDIT THE 2 LINES BELOW AS REQUIRED

$email_to = "[email protected]";

$email_subject = "Contact Form From Website";





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['phone']) ||

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

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

}



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

$last_name = $_POST['HaveyoueverhadCustomInteriorDesignworkbefore_0']; // required

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

$telephone = $_POST['BestContactTime']; // required

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

$comments = $_POST['What room will be designing for']; // not required

$comments = $_POST['color scheme']; // not required

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

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

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

       $comments = $_POST['StyleChoice_1']; // not 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,$first_name)) {

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

 }

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

$error_message .= 'The Last 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($first_name)."\n";

$email_message .= "Last Name: ".clean_string($last_name)."\n";

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

$email_message .= "Telephone: ".clean_string($telephone)."\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 -->
<link href="riveria.css" rel="stylesheet" type="text/css">
<body class="headerlinks">



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



<?php

}

?>

The form begis like this:

<form action="send_form_email.php" method="get" enctype="multipart/form-data" name="Info Form" id="Info Form">

And ends like this:

1

There are 1 answers

2
Ahmedskaya On

It seems you are posting the form wrong, for the form open tag edit method="get" to be method="post"

<form action="send_form_email.php" method="post" enctype="multipart/form-data"     name="Info Form" id="Info Form">

also try to redirect the user to a success step page

 header('Location: thanks.html');

and try to make server side validation to help the user to fill your form from the first time, check this out

for the email script, check this simple reference it will help you CSS-TRICKS