2011-07-21 14 views
0

私はhtmlページで連絡先フォームを持っています。フォームデータはPHPページに送られ、PHPページは電子メールアドレスに情報を送信します。 * @ gmail、*@hotmail.comのアドレスで動作しますが、受信する必要がある人は、自分のウェブサイトのアドレス用にOutlookを設定しても動作しません。どこか別の設定が必要ですか?ここでPHPの連絡先フォームがOutlookの電子メールアドレスで機能しない

は、PHPのコードです:

<?php 

$EmailFrom = "[email protected]"; 
$EmailTo = "[email protected]"; 
$Subject = "Website Contact Form"; 
$Name = Trim(stripslashes($_POST['name'])); 
$Location = Trim(stripslashes($_POST['location'])); 
$Phone = Trim(stripslashes($_POST['phone'])); 
$Email = Trim(stripslashes($_POST['email'])); 
$Comments = Trim(stripslashes($_POST['comments'])); 



// prepare email body text 
$Body = ""; 
$Body .= "Name: "; 
$Body .= $Name; 
$Body .= "\n"; 
$Body .= "Location: "; 
$Body .= $Location; 
$Body .= "\n"; 
$Body .= "Phone: "; 
$Body .= $Phone; 
$Body .= "\n"; 
$Body .= "Email: "; 
$Body .= $Email; 
$Body .= "\n"; 
$Body .= "Comments: "; 
$Body .= $Comments; 
$Body .= "\n"; 


// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>"); 

// redirect to success page 
print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">"; 

?> 
+0

「動作しません」とはどういう意味ですか? – MatTheCat

+0

Outlookのメールアドレスにメールが届かない –

答えて

1

この質問はかなりアップします。

メールクライアント(この場合はOutlook)は、適切なヘッダーのないメッセージをフィルタするように構成されている可能性があります。これは、クライアントポイントまたはsmtp時のサーバー接続にある可能性があります。この問題の主な原因は、基本的なphp mail()のコア機能は、スパマーによる悪用の可能性があるため、ほぼ普遍的に信頼されていないことです。

PHPMailerのようなライブラリを使用して、返信先やその他のヘッダーを適切に設定できるようにしてください。

+0

ありがとうございます。これを調べる –

関連する問題