簡體   English   中英

避免通過PHP聯系人表格發送的電子郵件被視為垃圾郵件

[英]Avoid emails being considered as spam when sent via a PHP contact form

我正在使用下面的代碼通過聯系表發送電子郵件。 問題是,每次電子郵件都會進入垃圾郵件箱(Outlook,Gmail等)。 我懷疑這是由於電子郵件正文中有一個url(網頁URL)。 因此,我想知道是否有一些解決方法(除了在gmail和Outlook中將這些電子郵件標記為非垃圾郵件)以保留URL(我想保留它),但又將這些電子郵件不視為垃圾郵件。 也許通過重新構造URL,使其看起來不像URL? 大公司肯定有技巧和竅門嗎? 非常感謝

<?php
// Email Submit
// Note: filter_var() requires PHP >= 5.2.0
if ( isset($_POST['email']) && isset($_POST['name']) && isset($_POST['message']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) ) {

  // detect & prevent header injections
  $test = "/(content-type|bcc:|cc:|to:)/i";
  foreach ( $_POST as $key => $val ) {
    if ( preg_match( $test, $val ) ) {
      exit;
    }
  }

  //send email
  mail( "dsfds@sfss.com", "Nouveau message de: ".$_POST['name'], $_POST['message'] ."\n From site: ". $_SERVER['HTTP_REFERER']., "From:" . $_POST['email'] . "\r\n" . "BCC: dsfds@gmail.com" );

}
?>

發送標頭,如下所示:

$to      = 'example@example.com';
$header = "From: noreply@example.com\r\n"; 
$header.= "MIME-Version: 1.0\r\n"; 
$header.= "Content-Type: text/html; charset=utf-8\r\n"; 
$header.= "X-Priority: 1\r\n"; 

mail($to, $subject, $message, $header);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM