Sending Email
From OpenEMR Project Wiki
Pre 4.0, mechanism involved using openemr/library/classes/class.phpmailer.php , and was not standardized.
This is standardized as of version 4.0, and the new mechanism includes following files:
- openemr/library/classes/class.phpmailer.php (upgraded to version 5.1)
- openemr/library/classes/postmaster.php
- openemr/library/classes/class.smtp.php
The following settings can be found in openemr/interface/globals.php:
//EMAIL SETTINGS // EMAIL METHOD (PHPMAIL, SMTP, SENDMAIL) $EMAIL_METHOD = "SMTP"; // HTML CHARSET $HTML_CHARSET = "UTF-8"; // SMTP SETTINGS $SMTP_Auth = true; $SMTP_HOST = ""; $SMTP_PORT = 25; $SMTP_USER = ""; $SMTP_PASS = "";
Here's an example of code using this mechanism :
require_once ($GLOBALS['srcdir'] . "/classes/postmaster.php"); $mail = new MyMailer(); $mail->From = $emailAddress; $mail->FromName = $name; $mail->Body = $emailContent; $mail->Subject = $subject; $mail->AddAddress($emailDestination, $firstNameDestination.", ".$lastNameDestination); if(!$mail->Send()) { error_log("There has been a mail error sending to " . $firstNameDestination . " " . $mail->ErrorInfo); } else { #email was sent }