简体   繁体   中英

PHP mailer not sending mail

I am trying to send a mail from a from in PHP, it's not working though. Not even a blank email is coming through to the end email. Advice?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Smart Gardens Gravesend | Garden Maintenance</title>
<link href="global.css" rel="stylesheet" type="text/css" />
    <link rel="stylesheet" media="all" type="text/css" href="menu_style.css" />
        <link rel="stylesheet" href="engine/css/vlightbox.css" type="text/css" />
        <style type="text/css">#vlightbox a#vlb{display:none}</style>
        <link rel="stylesheet" href="engine/css/visuallightbox.css" type="text/css" media="screen" />
        <script src="engine/js/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<div id="wrapper">
<div id="logo2"><img src="images/logo_02.png" width="231" height="101" alt="logo" /></div>
<div class="menu bubplastic horizontal lime">
    <ul>
        <li><span class="menu_r"><a href="about.html"><span class="menu_ar">About Us</span></a></span></li>
        <li class="highlight"><span class="menu_r"><a href="maintenance.html"><span class="menu_ar">Maintenance</span></a></span></li>
        <li><span class="menu_r"><a href="landscaping.html"><span class="menu_ar">Landscaping</span></a></span></li>
        <li><span class="menu_r"><a href="tree.html"><span class="menu_ar">Tree Work</span></a></span></li>
        <li><span class="menu_r"><a href="fencing.html"><span class="menu_ar">Fencing</span></a></span></li>
        <li><span class="menu_r"><a href="contact.php"><span class="menu_ar">Contact Us</a></span>
        </div>
<div id="content">
<form action="<? echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border ="0">
<tr>
  <td width="133">Name:</td><td width="252"><input type="text" size="42" name="name"/></td></tr>
<tr>
  <td>Email:</td><td><input type="text" name="email" size="42"/></td></tr>
<tr><td>Message</td><td><textarea name="message" rows="5" cols="31"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="Submit"/></td></tr>
</table>
</form>
<?php
if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['message'])){
$name = $_REQUEST['name'] ;
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;
$headers = "X-Mailer: php";
mail("mattmaclennan@live.co.uk", "Email from $name",
$message, "From:" . $email, $headers);
echo "Thanks, your email has been sent!";
}
?>
<br />
<br />
<div class="commentbox">
<h2>Caroline Roe, Old Road East, Gravesend</h2>
<p>Smart Gardens have been maintaining our gardens for 4 years now. We are very happy with their personal, friendly and knowledgable service. Highly recommended.</p>
</div>
<div class="commentfooter"></div>
<div class="commentbox">
<h2>Brian Colley, Darnley Road, Gravesend</h2>
<p>The Smart Gardens Team have been caring for our gardens for a number of years . Their conscientious, reliable work demonstrates the strength of their professional knowledge and versatile ability.</p>
<p>They have been able to make worthwhile, constructive suggestions which have led to the development and maturity of the rear garden particularly, in both the hard and soft landscape areas.</p>
<p>Their helpful, friendly and trustworthy nature is second to none and we heartily recommend them for routine maintenance or major project development work.</p>
</div>
<div class="commentfooter"></div>
<div class="commentbox">
<h2>Mrs Hathrill, Windmill Hill, Gravesend</h2>
<p>I have regularly used the services of Smart Gardens for both Maintenance and Landscape projects.</p>
<p>They are conscientious, hard working and always strive for perfection. They are also friendly and approachable. I would not hesitate to recommend them.</p>
</div>
<div class="commentfooter"></div>
</div>
</body>
</html>

The same PHP code has worked on other mailers, but not sure why this one isn't working :\\ thanks!

There is a good chance that you have an issue with the email server.

However, the following code appears to be incorrect.

mail("mattmaclennan@live.co.uk", "Email from $name",
$message, "From:" . $email, $headers);

Try:

$headers = "From:" . $email . "\r\n";
$headers .= "X-Mailer: php\r\n";
mail("mattmaclennan@live.co.uk", "Email from $name",
$message, $headers);

Also note, that setting the "From" address to one that doesn't belong to your domain may cause the message to be blocked at some point (either by your host, or the recipient's spam filter). You might need to set a Reply-To: header, and simply use From: as an email address belonging to your server.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM