我有一个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);
答案 0 :(得分:0)
有很多原因导致电子邮件被视为垃圾邮件或垃圾邮件。我假设您的php服务器用来发送电子邮件的邮件帐户与您所说的实际电子邮件中的“FROM”帐户不同。这几乎是大多数电子邮件客户端的一个触发器,您发送垃圾邮件并试图让它看起来像是来自信誉良好的来源。
答案 1 :(得分:0)
您的邮件被标记为垃圾邮件有很强的理由。邮件服务器验证来自源的IP地址。 “每封邮件只能通过邮件服务器发送”。如果您的邮件没有通过邮件服务器,那么您的邮件将被视为垃圾邮件。
答案 2 :(得分:-1)
如果我理解你并且你说电子邮件已收到但发送到垃圾邮箱,那么我认为问题在于您的电子邮件客户端,而不是代码。电子邮件客户端决定邮件是否是垃圾,而不是构建电子邮件的代码。