2

サイトの確認メールを作成しようとしています。ユーザーは問題なく登録でき、すべてがデータベースに登録されますが、電子メールは送信されません。私は普通に試してみましたが、smtp サーバーに関するエラーが表示されたので、誰かが SurgeMailer を試してみるべきだと言いました。私はそれをダウンロードしました、そして今、電子メールは実際には送信したと言っていますが、電子メールは決してそれらを受信しません. どんな助けでも素晴らしいでしょう!メールを送信するためのコードを次に示します。

/*Send Email here*/
$to=$Email;

$subject="Newgenstudios Account Confirmation";

/*From*/
$header="From:Newgenstudios <noreply@newgenstudios.com>";

/* Your message */   /*Not Finished */
$message = "<h3>Welcome to the site ".ucfirst(strtolower($First_Name))."!</h3>
<p>To complete your account registration, you must activate your account. Click on the link below or paste it into the URL to activate your account.</p>
<p><a href='http://localhost/confirmation.php?passkey=$confirm_code'>Activate Now!</a </p>
<p>Once your account has been activated, you may log in at anytime using the information you supplied below:<br />
<strong>Email: </strong>$Email<br />
<strong>Password: </strong>$Password</p>
<p>Other Information:</p>
<strong>Name: </strong>$First_Name<br />
<strong>Phone: </strong>$Phone<br />
<p>Thank you for registering and see you on the site!</p>
<p>Did you not register? Then please disregard this message.</p>";

/* Send Email */
$sentmail = mail($to,$subject,$message,$header);
}

/*If not found*/
else {
echo "Not found your email in our database";
}

/* email succesfully sent */
if($sentmail){
echo "Your Confirmation link Has Been Sent To Your Email Address.";
}
else {
echo "Cannot send Confirmation link to your e-mail address";
}
?>
4

2 に答える 2

0

Gmailアカウントを使用してメールを送信することをお勧めします。これは、私にとって最も簡単な設定です。(ちょうどグーグル'php gmailメールを送信')。また、スパムフォルダを確認することを忘れないでください。

于 2012-12-14T00:53:55.343 に答える
0

1-このメール機能を使用してみてください。

2-「fromvalue」をドメインに関連する有効なメールとして書き込みます(例:noreply@domain.com)。

3-手順が機能しない場合は、ホスティングを呼び出してください。mail()関数がブロックされていると思います。

function send_mail($to,$from,$subject,$msg){
        // message
        $message = '
        <html>
        <head>
          <title>Message</title>
        </head>
        <body dir="rtl">
        <p align="right">'
        . $msg .
        '</p>
        <br>

        </p>
        </body>
        </html>
        ';

        // To send HTML mail, the Content-type header must be set
        $headers  = 'MIME-Version: 1.0' . "\n";
        $headers .= 'Content-type: text/html; charset=utf-8' . "\n";

        // Additional heade rs
        $headers .= "From: ".$from . "\n";
        //$headers .= 'Bcc: info@domain.co.uk' . "\n";

        // Mail it
        return mail($to, '=?windows-1256?B?'.base64_encode($subject).'?=', $message, $headers);
    }
于 2012-12-14T00:47:45.627 に答える