0

そのため、PHPのmail()関数を使用して、ユーザーが登録したときにメールを送信しようとしています。ただし、何らかの理由で、会社の電子メールへの送信を拒否します。このようなものに必要な、欠落している可能性のある追加のパラメーターはありますか、それとも、これらの電子メールをフィルターで除外する会社の電子メールからのものだと思いますか?

編集:ここにいくつかのコードがあります:

$to = 'something@something.com';
$subject = 'New Web Registration';
$from = 'Quote Registration';

$headers = 'Content-type: text/html charset=iso-8859-1\r\n';
$headers .= 'From: ' . $from;

$body = '<table>
        <tr>
            <td style="text-align: right;">WebUserID:</td>
            <td>' . $wuid . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Name: </td>
            <td>' . $regdata['Name'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Company:</td>
            <td>' . $regdata['Company'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Address:</td>
            <td>' . $regdata['Address'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">CSZ:</td>
            <td>' . $regdata['City'] . ', ' . $regdata['State'] . ' ' . $regdata['Zip'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Phone:</td>
            <td>' . $regdata['Phone'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Fax:</td>
            <td>' . $regdata['Fax'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">URL:</td>
            <td>' . $regdata['URL'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Email:</td>
            <td>' . $email . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Comments:</td>
            <td>' . $regdata['Comments'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">Customer Group:</td>
            <td>' . $regdata['CustomerGroup'] . '</td>
        </tr>
        <tr>
            <td style="text-align: right;">How Heard</td>
            <td>' . $regdata['HowHeard'] . '</td>
        </tr>
        </table>';

if (!mail($to, $subject, $body, $headers)) {
    echo 'Message delivery failed.'; 
}

そしてそれはGmailのような他のドメインに首尾よく電子メールを送ります。配信/フィルターの問題?

4

2 に答える 2

1

他のドメインに正常に送信されている場合は、会社のメール サーバーに問題があります。メールがスパムまたは同様のものとしてフィルタリングされている可能性があります。

簡単な解決策は、STMP を使用することです。または、メール サーバーのログを調べて、フィルタされている理由を見つけようとすることもできます。

HTML として送信する場合は、必ず HTML メッセージ全体を送信してください。(タグとすべて)。

于 2012-06-25T19:55:09.907 に答える
0

メールを送信するためのコードを提供します。私のアプリケーションでは問題なく動作しています。それがあなたを助けることを願っています。

function sendmail($username)
{
    $from     =       "test@test.com";
    $to       =       "mytest@test.com";
    $subject  =       "My Test Subject";
    $body     =       "My Test Body";
    $headers .=      "From:".$from ."". "\r\n";

    if (mail($to ,$subject ,$body,$headers)) 
    {
        $msg = "Your message has been sent.";
    } 
    else
    {
        $msg = "Error in Sending the Message. Please try again.";
    }
    return $msg;
}
于 2012-06-25T19:44:24.633 に答える