2016-05-01 79 views
0

我有一個小網站設置,允許人們通過發送自己的電子郵件和他們的代表電子郵件發送預先寫好的電子郵件給他們的代表。 它使用sendmail進行設置,適用於發送到Gmail,個人郵件,以及其他各種域名。但是,它無法發送到我需要它發送到的一個域。 我收到以下錯誤Sendmail未能發送到某些域名

<[email protected]>: Sender address rejected: Domain not found

我一直在尋找通過天知道有多少事情,我似乎無法弄清楚看到它的工作對一切。

希望有人能解釋它。乾杯!

<?php 
$field_name = $_POST['cf_name']; 
$field_email = $_POST['cf_email']; 
$field_recipient = $_POST['cf_recipient']; 

$subject = 'Message Regarding Cuts in the Mental Health Budget'; 

$body_message = 'hello'; 

$headers = 'From: '.$field_email."\r\n"; 

$headers .= 'Reply-To: '.$field_email."\r\n"; 
$headers .= 'Return-Path: '.$field_email; 

$mail_status = mail($field_recipient, $subject, $body_message, $headers); 

if ($mail_status) { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Thank you for the message. We hope this will get the TDs in gear.'); 
     window.location = 'index.html'; 
    </script> 
<?php 
} 
else { ?> 
    <script language="javascript" type="text/javascript"> 
     alert('Message failed. Please, make sure all boxes have been filled and try again.'); 
     window.location = 'index.html'; 
    </script> 
<?php 
} 
?> 
+0

您給寄給的地址是什麼? –

+0

你能發佈你的發件人代碼嗎? –

+0

@MatthewCliatt在代碼中添加了,謝謝。 – emmet

回答

0

您未能在SMTP會話中設置MAIL FROM:命令中使用的「信封發件人」電子郵件地址。它可以通過將-f命令行選項傳遞給sendmail來設置。請參閱additional_parameters in mail documentation

+0

所以這就是我要找的?: '''郵件('[email protected]','主題','消息',空, '[email protected]'); ''' 如果是這樣,那麼在我的應用中,正確的方法是: ''mail_status = mail($ field_recipient,$ subject,$ body_message,$ headers);''' – emmet