
Originally Posted by
djr33
It sounds like your mail() function is configured incorrectly. Can you contact your host for assistance?
On a server with a properly configured mail() function, this code should work.
Hi, I contacted my host and they gave me the below code which did work for about five minutes then stopped again. How could that have happened?
PHP Code:
<?php
// You only need to modify the following three lines of code to customise your form to mail script.
$email_to = "mailinglist@onlyjoe.co.uk"; // Specify the email address you want to send the mail to.
$email_subject = "ADD TO ONLYJOE MAILING LIST"; // Set the subject of your email.
// Specify a page on your website to display a thankyou message when the mail is sent
$thankyou_url = "http://web.me.com/grimshawa/onlyjoe.co.uk_Coming_Soon/Thanks.html";
// Get the details the user entered into the form
$email_from = $_POST["email"];
// Validate the email address entered by the user
if(!filter_var($email_from, FILTER_VALIDATE_EMAIL)) {
// Invalid email address
die("The email address entered is invalid.");
}
// The code below creates the email headers, so the email appears to be from the email address filled out in the previous form.
// NOTE: The \r\n is the code to use a new line.
$headers = "From: $email_from . \r\n";
$headers .= "Reply-To: $email_from . \r\n"; // (You can change the reply email address here if you want to.)
// Now we can construct the email body which will contain the name and message entered by the user
// This is the important ini_set command which sets the sendmail_from address, without this the email won't send.
ini_set("sendmail_from", $email_from);
// Now we can send the mail we've constructed using the mail() function.
// NOTE: You must use the "-f" parameter on Fasthosts' system, without this the email won't send.
$sent = mail($email_to, $email_subject, $headers, "-f" . $email_from);
// If the mail() function above successfully sent the mail, $sent will be true.
if($sent) {
header("Location: " . $thankyou_url); // Redirect customer to thankyou page
} else {
// The mail didn't send, display an error.
echo "There has been an error sending your message. Please try later.";
}
?>
Bookmarks