0

送信フォームの PHP コードの問題を理解しようとしているのですが、友人のためにやっています。メールを送信していますが、問題は、受信者が非常に奇妙なメールアドレスを取得することです。画像を添付して詳しく見ていきます。

私のPHPコードは次のとおりです。

<?php 
    $error = false;
    $sent = false;

    if(isset($_Post['name'])) {
        if(empty($_Post['name']) || empty($_Post['email']) ||  empty($_Post['comments'])) {
            $error = true;
        } else {

        $to = "linardsberzins@gmail.com";

        $name = trim($_Post['name']);
        $email = trim($_Post['email']);
        $comments = trim($_Post['comments']);

        $subject = "Contact Form";

        $messages =  "Name: $name \r\n Email: $email \r\n Comments: $comments";

        $headers  = 'MIME-Version: 1.0' . "\r\n";
        $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
        $headers .= "From:" . $name . "\r\n";
        $mailsent = mail($to, $subject, $messages, $headers);

        if($mailsent) {
            $sent = true;
        }
    }
}
?>

どうもありがとう変なメールが表示される

4

6 に答える 6

7

次のようになりますSender <HIS@EXAMPLE.COM>

 $headers .= 'From: '.$name.' <'.$email.'>' . "\r\n";
于 2012-08-31T11:59:19.780 に答える
2

PHP メールの手動例 2のように、メールにヘッダーを追加してみてください。

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>

名前付きのメールから送信したい場合は、これでうまくいきます

$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
于 2012-08-31T11:58:01.513 に答える
2

これをヘッダーに追加します

$headers .= "Reply-To: $replyEmail\r\n";
于 2012-08-31T11:59:33.790 に答える
2

From: ヘッダーには、名前だけでなく電子メール アドレスも含める必要があります。

"From:My Display Name<mydisplayname@gmail.com>\r\n"
于 2012-08-31T11:59:50.830 に答える
2
<?php 
    $error = false;
    $sent = false;

    if(isset($_Post['name'])) {
        if(empty($_Post['name']) || empty($_Post['email']) ||  empty($_Post['comments'])) {
            $error = true;
        } else {

        $to = "linardsberzins@gmail.com";

        $name = trim($_Post['name']);
        $email = trim($_Post['email']);
        $comments = trim($_Post['comments']);

        $subject = "Contact Form";

        $messages =  "Name: $name \r\n Email: $email \r\n Comments: $comments";

        $headers  = 'MIME-Version: 1.0' . "\r\n";
        $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
        $headers .= 'From: '.$name.' <sender@example.com>' . "\r\n";
        $mailsent = mail($to, $subject, $messages, $headers);

        if($mailsent) {
            $sent = true;
        }
    }
}
?>

これを試して。ヘッダーを変更するだけです。

$headers .= 'From: '.$name.' <sender@example.com>' . "\r\n";
于 2012-08-31T12:05:13.150 に答える
0

こんにちは これはエラーではありません.提供するSENDER EMAILと、これの代わりに送信者の電子メールアドレスが表示されます.それ以外の場合は、私たちのホスティングアドレスが使用されます.

于 2012-08-31T12:01:46.650 に答える