In my PHP webapp, I want to be notified via email whenever certain errors occur. I'd like to use my Gmail account for sending these. How could this be done?
+3
A:
You could use PEAR's mail function with Gmail's SMTP Server
Note that when sending e-mail using Gmail's SMTP server, it will look like it came from your Gmail address, despite what you value is for $from.
(following code taken from About.com Programming Tips )
<?php
require_once "Mail.php";
$from = "Sandra Sender <[email protected]>";
$to = "Ramona Recipient <[email protected]>";
$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>");
}
?>
maxsilver
2008-08-30 16:21:44
+6
A:
Gmail's SMTP-server requires a very specific configuration.
From Gmail help:
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 ([email protected])
Password: your Gmail password
You can probably set these settings up in Pear::Mail or PHPMailer. Check out their documentation for more details.
Javache
2008-08-30 19:22:42
A:
Swift Mailer, while generally considered bloated in comparison to other mailing classes has an approach for this too:
http://www.swiftmailer.org/wikidocs/v3/connections/smtp#if_you_need_to_use_authentication
mercutio
2008-09-01 09:13:01