PHP send email using PHP SMTP mail Pear functions
Sending Email from a PHP Script Using SMTP Authentication
To connect to an outgoing SMTP server from a PHP script using SMTP authentication and send an email:
Make sure the PEAR Mail package is installed. Typically, in particular with PHP 4 or later, this will have already been done for you. Just give it a try.
- Adapt the example below for your needs. Make sure you change the following variables at least:
- from: the email address from which you want the message to be sent.
- to: the recipient's email address and name.
- host: your outgoing SMTP server name.
- username: the SMTP user name (typically the same as the user name used to retrieve mail).
- password: the password for SMTP authentication.
PHP Pear's Mail.php is located in /homw/cpanelusername/php (Replace cPanelusername with your ACTUAL cpanel username.
$path = '/home/cpanelusername/php';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);
Sending PEAR Mail.php...");
require('Mail.php'); /* mail setup recipients, subject etc */
$recipients = "email@example.com"; $headers["From"] = "firstname.lastname@example.org"; $headers["To"] = "email@example.com"; $headers["Subject"] = "User feedback"; $mailmsg = "Hello, This is a test."; /* SMTP server name, port, user/passwd - Use "localhost" if you encounter Connection refused errors*/
$smtpinfo["host"] = "smtp.mycorp.com"; $smtpinfo["port"] = "25"; $smtpinfo["auth"] = true; $smtpinfo["username"] = "EmailAddress"; $smtpinfo["password"] = "EmailAddressPassword"; /* Create the mail object using the Mail::factory method */ $mail_object =& Mail::factory("smtp", $smtpinfo); /* Ok send mail */ $mail_object->send($recipients, $headers, $mailmsg); ?>
There are loads and loads of examples of PHP PEAR mail sending scripts online, which a brief Google search will find for you.