web-dev-qa-db-ja.com

PHP mail()フォームをGMAILスパムに送信

私はこの問題がここで数回対処されていることを知っています。適切なヘッダーを設定するための指示に従ってみましたが、Gmailのスパムフィルターに入るメールで問題が発生します。

私が試したことを誰かが見てくれたら、本当にありがたいです。以下のコードには、ここで説明されているようにヘッダーが追加されていません: http://www.velvetblues.com/web-development-blog/avoid-spam-filters-with-php-mail-emails/

前もって感謝します。

define("WEBMASTER_EMAIL", '[email protected]');
if($post)
{
    $name    = stripslashes($_POST['name']);
    $email   = trim($_POST['email']);
    $subject = trim($_POST['subject']);
    $message = stripslashes($_POST['message']);

    $error = '';

    // Check name
    if(!$name)
        $error .= 'Name required! ';

    // Check email
    if(!$email)
        $error .= 'E-mail required! ';

    if($email && !ValidateEmail($email))
        $error .= 'E-mail address is not valid! ';

    // Check message
    if(!$message)
        $error .= "Please enter your message!";

    if(!$error)
    {

        $mail = mail(WEBMASTER_EMAIL, $subject, $message,
            "From: ".$name." <".$email.">\r\n"
            ."Reply-To: ".$email."\r\n"
            ."X-Mailer: PHP/" . phpversion());

        if($mail)
            echo 'OK';
    }
    else
        echo '<div class="errormsg">'.$error.'</div>';
}
6
user1040259

使用このコード

 $to = Email;
 $subject = subject ;
 $body = "<div> hi hi .. </div>";

    $headers = 'From: YourLogoName [email protected]' . "\r\n" ;
    $headers .='Reply-To: '. $to . "\r\n" ;
    $headers .='X-Mailer: PHP/' . phpversion();
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";   
if(mail($to, $subject, $body,$headers)) {
  echo('<br>'."Email Sent ;D ".'</br>');
  } 
  else 
  {
  echo("<p>Email Message delivery failed...</p>");
  }
12
Erfan Safarpoor

これがあなたの問題だと思います:

 "From: ".$name." <".$email.">\r\n"

あなたはGmail、hotmail、またはユーザーの電子メールプロバイダーではないため、「From:otherdomain.com」を作成してから「mail.yourdomain.com」経由でメールを配信することはできません。これにより、メールがスパムフォルダに移動する可能性があります。

試してみてください

 "From: YourWebsiteName <[email protected]>\r\n"
."Reply-To: ".$name." <".$email.">\r\n"

代わりに。

また:あなたのコードは非常に保存されておらず、主要なスパムターゲットです-グーグル「メールヘッダーインジェクションphp」!

4
iHaveacomputer

Googleは、ウェブサイトだけでなく、ネットワーク全体で多くのユーザーにスパムを送信していたサービスプロバイダーも懲戒する傾向があります。グーグルがスパマーとして認識するこれらのサービスプロバイダーの1つにサインアップしている場合、これがphp mail()メッセージがGmailのスパムボックスにドロップする理由である可能性があります。この問題についてサーバープロバイダーとチャットしてみてください。

その場合、「スパム」メッセージでグーグルから警告が表示されます。

「このメッセージがスパムに含まれているのはなぜですか?home.plからのメッセージの多くがスパムであることがわかりました。詳細」

0
DevWL