Correct SMTP-Mailing with PHP
PHP's mail() function is not usable in Shared-Hosting environments.Â
Here is how to use SMTP for mailing with PHP:Â
First, one needs Pear::Mail (see Pear.php.net).Â
Next, in safemode open_basedir must includes /usr/share/php (with Debian's Pear::Mail package).Â
Last not least the PHP code:Â
include("Mail.php"); # $params["host"] - The server to connect. Default is localhost $params["host"]="localhost";
# $params["port"] - The port to connect. Default is 25 # $params["auth"] - Whether or not to use SMTP authentication. Default is FALSE # $params["username"] - The username to use for SMTP authentication. # $params["password"] - The password to use for SMTP authentication. # $params["persist"] - Indicates whether or not the SMTP connection # should persist over multiple calls to the send() method. $recipients = array('To' => 'johndoe@foo.com'); $headers['From'] = 'johndoe@foo.com'; $headers['To'] = 'johndoe@foo.com'; $headers['Subject'] = "Foo topic"; $mail_object =& Mail::factory('smtp', $params); $mail_object->send($recipients, $headers, $message);
Â
Remark: As of 2014-12-30, all web servers hosted at ITEG with PHP support also have Pear::Mail
installed, as debian package php-mail
.
Â
Originally from: IBCL BLog.
Originally posted: 2006-12-20