我该怎么做才能阻止我发送的邮件被归类为垃圾邮件?

时间:2014-02-05 16:15:57

标签: php email

我有一个PHP脚本,允许我通过点击按钮发送带有PDF的电子邮件。该脚本有效,但我收到垃圾邮件中的邮件。我想知道为什么?我能做些什么来接收邮件。

$mail_to = "brian.millot@live.fr"; //Destinataire  
$from_mail = $dataed['EDI_FROM']; //Expediteur  
$from_name = "Nom"; //Votre nom, ou nom du site  
$reply_to = $_POST['edi_from']; //Adresse de réponse  
$subject = "Nouvelle commande";      
$file_name = $_POST['urlpdfvcmd'].".pdf";  
$path = "temp/";  
$typepiecejointe = filetype($path.$file_name);  
$data = chunk_split( base64_encode(file_get_contents($path.$file_name)) );  
//Génération du séparateur  
$boundary = md5(uniqid(time()));  
$entete = "From: $from_mail \n";  
$entete .= "Reply-to: $from_mail \n";  
$entete .= "X-Priority: 1 \n";  
$entete .= "MIME-Version: 1.0 \n";  
$entete .= "Content-Type: multipart/mixed; boundary=\"$boundary\" \n";  
$entete .= " \n";  
$message  = "--$boundary \n";  
$message .= "Content-Type: text/html; charset=\"iso-8859-1\" \n";  
$message .= "Content-Transfer-Encoding:8bit \n";  
$message .= "\n";  
$message .= "Bonjour ".$infcmd['CMD_CLT_LIV_NOM'].", <br /><br />
Veuillez trouver ci-joint le détail de votre commande no ".$infcmd['CMD_CODE'].". <br /> 
Cordialement. <br /><br />
".$sign['CST_SOC_NOMSOC']."<br />
".utf8_decode($sign['CST_SOC_ADRESSE_RUE1'])."<br />
".utf8_decode($sign['CST_SOC_ADRESSE_RUE2'])."<br />
".utf8_decode($sign['CST_SOC_ADRESSE_CP'])." - ".utf8_decode($sign['CST_SOC_ADRESSE_VILLE'])."<br />
Tel : ".$sign['CST_SOC_ADRESSE_TEL']."<br />
Fax : ".$sign['CST_SOC_ADRESSE_FAX']."";  
$message .= "\n";  
$message .= "--$boundary \n";  
$message .= "Content-Type: $typepiecejointe; name=\"$file_name\" \n";  
$message .= "Content-Transfer-Encoding: base64 \n";  
$message .= "Content-Disposition: attachment; filename=\"$file_name\" \n";  
$message .= "\n";  
$message .= $data."\n";  
$message .= "\n";  
$message .= "--".$boundary."--";  

mail($mail_to, $subject, $message, $entete); 

3 个答案:

答案 0 :(得分:0)

有很多原因导致电子邮件被视为垃圾邮件或垃圾邮件。我假设您的php服务器用来发送电子邮件的邮件帐户与您所说的实际电子邮件中的“FROM”帐户不同。这几乎是大多数电子邮件客户端的一个触发器,您发送垃圾邮件并试图让它看起来像是来自信誉良好的来源。

答案 1 :(得分:0)

您的邮件被标记为垃圾邮件有很强的理由。邮件服务器验证来自源的IP地址。 “每封邮件只能通过邮件服务器发送”。如果您的邮件没有通过邮件服务器,那么您的邮件将被视为垃圾邮件。

答案 2 :(得分:-1)

如果我理解你并且你说电子邮件已收到但发送到垃圾邮箱,那么我认为问题在于您的电子邮件客户端,而不是代码。电子邮件客户端决定邮件是否是垃圾,而不是构建电子邮件的代码。