可能重复:
PHP Mail stops working without me editing the codePHP邮件停止工作
我有一个客户邮件功能一会儿一个问题。事情是,我用来接收邮件的邮件不时收到邮件。我注意到这一点,因为当我从我的客户邮件([email protected])更改为我自己的([email protected])时,它开始正常工作。此外,“成功功能”给我的信息“邮件没有发送。”当我使用我的客户邮件([email protected])。所以这个问题似乎在某种程度上被放置在mailadress中,有时候不接受邮件。这种情况每天都会发生几次,我所能做的就是等待它再次运行。我已经发布了下面的代码。
<?php
if(isset($_POST['submit'])){
$mottagare = '[email protected]';
$titel = 'Meddelande';
$namn = strip_tags($_POST['namn']);
$foretag = strip_tags($_POST['foretag']);
$adress = strip_tags($_POST['adress']);
$postnr = strip_tags($_POST['postnr']);
$ort = strip_tags($_POST['ort']);
$telefon = strip_tags($_POST['telefon']);
$epost = strip_tags($_POST['epost']);
$meddelande = strip_tags($_POST['meddelande']);
$meddelande=nl2br($meddelande);
$body =
"
Namn: <b>". $namn ."</b><br />
Företag: <b>". $foretag ."</b><br />
Adress: <b>". $adress ."</b><br />
Postnr: <b>". $postnr ."</b><br />
Ort: <b>". $ort ."</b><br />
Telefon: <b>". $telefon ."</b><br />
E-post: <b>". $epost ."</b><br /><br />
Meddelande: <b><br />". $meddelande
;
$headers = 'From: '. $namn .' <[email protected]>' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'X-Mailer: PHP/' . phpversion();
$success = mail($mottagare, $titel, $body, $headers);
}
?>
<?php
if(!($success)){
echo "<p class=\"field_error\">The mail was not sent.</p>";
}
?>
<?php
if($success){
echo "<p class=\"p_success\">Great! The mail was sent.</p>";
}
?>
<form method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">
<p>
<label for="namn">Namn: *</label><br />
<input type="text" name="namn" id="namn" class="text" tabindex="15" />
<br />
<label for="foretag">Företag:</label><br />
<input type="text" name="foretag" id="foretag" class="text" tabindex="20" />
<br />
<label for="adress">Adress:</label><br />
<input type="text" name="adress" id="adress" class="text" tabindex="30" />
<br />
<label for="postnr">Postnummer:</label><br />
<input type="text" name="postnr" id="postnr" class="text_medium" tabindex="40" />
<br />
<label for="ort">Ort:</label><br />
<input type="text" name="ort" id="ort" class="text" tabindex="50" />
<br />
<label for="telefon">Telefon: *</label><br />
<input type="text" name="telefon" id="telefon" class="text" tabindex="60" />
<br />
<label for="epost">E-post:</label><br />
<input type="text" name="epost" id="epost" class="text" tabindex="70" />
<br />
<label for="meddelande">Meddelande: *</label><br />
<textarea name="meddelande" id="meddelande" class="textarea" tabindex="80"></textarea>
<br />
<input type="submit" name="submit" value="Skicka" class="submit" />
</p>
</form>
检查$ namn的值(限制为字母,连字符和空格)。请检查您的主机,因为它们可能会过滤一些电子邮件。 – diolemo 2012-03-05 14:47:22
看来你的代码工作正常,但你的邮件服务器/接收邮件服务器不是。例如http://serverfault.com/ – jeroen 2012-03-05 14:50:02
您可能会得到更好的帮助谢谢您的答案!我会看看另一个论坛。我已经与我的网站主持人进行了一些对话,并且在我们发言时他正在研究它。到目前为止,我所知道的是APC缓存在服务器上启用,它使用SMTP来发送邮件。我得到了这样的建议,也许我需要使用PEARS来通过他的SMTP服务器发送邮件,但根据他的说法,我不知道。 – 2012-03-06 22:50:19