私のフォームの1つの電子メール送信をテストするために使用しているPHPコードです。それはうまくいくが、何らかの理由で @ localhost.mydomain.comを送信者の電子メールアドレスに付加する。ここに例があります:PHPはoutgoing電子メールにlocalhostを追加します
From: James <[email protected]@localhost.mydomain.com>
以下は完全なコードです。
<?php
$email = sqlEscape($_POST['email']);
$name = sqlEscape($_POST['name']);
$to = '[email protected]';
$subject = 'Email From website';
$message = 'The message here';
$headers = 'From: "'.$name.'" <"'.$email.'">' . "\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
if(mail($to, $subject, $message, $headers)){
echo('Message sent successfully');
}else{
echo('<a href="contact.php">Click here</a> to try again.');
}
?>
追加しないでください。ありがとう
'sqlEscape()'なしで試してみましたか? – Leri
なぜあなたはsqlEscapeの何らかの形になっていない何かをsqlEscapeします – Anigel
'$ email'の値はあなたがそれを送る前に何ですか?どのSMTPサービスを使用していますか? SMTPサーバーには、実際のアウトバウンドドメインを中継アドレスのfromヘッダーに追加するポリシーが設定されている場合があります。 –