timph Posted September 27, 2015 Share Posted September 27, 2015 Hello, I've got a contact form on my site but idk how to make it send the details to me. I just want it to send the details to my email or to a file on my server. Link to comment Share on other sites More sharing options...
Ingolme Posted September 27, 2015 Share Posted September 27, 2015 You need a server-side language such as PHP to send the mail. HTML alone can't do it. Link to comment Share on other sites More sharing options...
timph Posted September 27, 2015 Author Share Posted September 27, 2015 You need a server-side language such as PHP to send the mail. HTML alone can't do it. Would this script work? <?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['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) { died('We are sorry, but there appears to be a problem with the form you submitted.'); } $first_name = $_POST['first_name']; // required $last_name = $_POST['last_name']; // required $email_from = $_POST['email']; // required $telephone = $_POST['telephone']; // not 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,$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.nn"; 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."rn". 'Reply-To: '.$email_from."rn" . '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 } ?> Link to comment Share on other sites More sharing options...
Ingolme Posted September 27, 2015 Share Posted September 27, 2015 Well, that should work as long as you run it on a server with PHP enabled and a mailing service. You may need to customize the script. Link to comment Share on other sites More sharing options...
timph Posted September 27, 2015 Author Share Posted September 27, 2015 Well, that should work as long as you run it on a server with PHP enabled and a mailing service. You may need to customize the script. Would it work on a free domain with 000webhost Link to comment Share on other sites More sharing options...
Ingolme Posted September 27, 2015 Share Posted September 27, 2015 I do think 000webhost supports PHP mail. Try it and see. I would recommend going through the W3Schools.com PHP tutorial if you haven't learned PHP yet. Link to comment Share on other sites More sharing options...
timph Posted September 30, 2015 Author Share Posted September 30, 2015 I do think 000webhost supports PHP mail. Try it and see. I would recommend going through the W3Schools.com PHP tutorial if you haven't learned PHP yet. Hello, I changed the php code above to my information and it still doesn't work when I try to send a mail. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now