2011-08-04 20 views
1

私はメールを送るPHPスクリプトを作った。それは私がそれを変更したときまでうまく働いたので、ただのテキストではなくhtmlとして送信しました。しかし、それは動作していません。スクリプト自体は成功を返すが、私は電子メールを取得していない。私は私の迷惑メールフォルダをチェックしました。なぜこれが動作していないのか誰にも見えますか?おかげなぜこのphpメールスクリプトは動作しませんか?

<?php 
$to = $_POST["mail"]; 
$subject = 'Registration at Campatet'; 
$message = ' 
<html> 
<head> 
    <title>Registration at Campatet</title> 
</head> 
<body> 
    <p>Thank you for registering at Campatet!</p> 
    <table> 
    <tr> 
     <th>Person</th><th>Day</th><th>Month</th><th>Year</th> 
    </tr> 
    <tr> 
     <td>Joe</td><td>3rd</td><td>August</td><td>1970</td> 
    </tr> 
    <tr> 
     <td>Sally</td><td>17th</td><td>August</td><td>1973</td> 
    </tr> 
    </table> 
</body> 
</html> 
'; 

$headers = "MIME-Version: 1.0" . "\r\n"; 
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n"; 

$headers .= "From: [email protected]" . "\r\n"; 

if(mail($to, $subject, $message, $headers)){ 
echo "Success sending e-mail to: <b>".$to."</b>"; 
} 
else{ 
echo "There was a error"; 
} 
?> 
+0

'localhost'?... – Nemoden

+0

あなたはob_startとob_get_cleanを考慮しましたか? –

+0

http://php.net/manual/en/function.mail.phpを見て、おそらく何かを忘れてしまったかどうかを確認してください。 – Svish

答えて

2

は、あなただけのヘッダーとしてこれを使用してください:Reply-Toヘッダーなしで電子メールのヘッダを指定

+0

これは、私が電子メールを受け取るのを妨げている:Content-type:text/html;それを取り除いて正常に送る –

1

まず、ライン

$headers = "MIME-Version: 1.0" . "\r\n"; 

あなたはポスト変数は、それが正しくアドレスだ受信していることを確認していますを削除してみてください?それを削除し、使用しようとしている電子メールアドレスに置き換えてください。

あなたのウェブサイトからメールを送信できたことがありますか?

+0

はい、私は –

+0

の前に成功しました。$ headers = "MIME-Version:1.0"というコメントがあります。 "\ r \ n";前。何もしませんでした。そして、それは正しく電子メールアドレスを受信して​​います。あなたが底を見ると、それはアドレス –

+0

をエコーし​​ますが、とにかく助言をいただきありがとうございます。 –

1

は、多くの場合、スパムを疑う理由として考えられています。あなたが返信を望まないことは重要ではありません。ちょうどReply-Toヘッダーを指定してください。

$headers = "MIME-Version: 1.0" . "\r\n"; 
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n"; 
$headers .= 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); 
関連する問題