私のPHPWebアプリでは、特定のエラーが発生したときに電子メールで通知を受け取りたいと思っています。Gmailアカウントを使用して送信したいのですが。これはどのように行うことができますか?
Dinah
質問する
26410 次
2 に答える
10
Gmail の SMTP サーバーには、非常に特殊な構成が必要です。
Gmail のヘルプから:
Outgoing Mail (SMTP) Server (requires TLS)
- smtp.gmail.com
- Use Authentication: Yes
- Use STARTTLS: Yes (some clients call this SSL)
- Port: 465 or 587
Account Name: your full email address (including @gmail.com)
Email Address: your email address (username@gmail.com)
Password: your Gmail password
これらの設定は、おそらくPear::MailまたはPHPMailerで設定できます。詳細については、ドキュメントを参照してください。
于 2008-08-30T19:22:42.540 に答える
4
GmailのSMTPサーバーでPEARのメール機能を使用できます
GmailのSMTPサーバーを使用して電子メールを送信する場合、$ fromの値に関係なく、Gmailアドレスから送信されたように見えることに注意してください。
( About.comプログラミングのヒントから取得した次のコード)
<?php
require_once "Mail.php";
$from = "Sandra Sender <sender@example.com>";
$to = "Ramona Recipient <recipient@example.com>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
// stick your GMAIL SMTP info here! ------------------------------
$host = "mail.example.com";
$username = "smtp_username";
$password = "smtp_password";
// --------------------------------------------------------------
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>
于 2008-08-30T16:21:44.907 に答える