phpmailer for codeigniter (ci)
on our new server we was getting problem with mail sending. yahoo and some other mail server was not receiving our mails to there inbox. so i imported the most popular php class (phpmailer ) in codeigniter as plugin. it’s install and use is too simple. you have to download the zip file from here, then unzip it to your plugin (system\plugins) folder. then edit phpmailer_pi.php , and edit the default configuration as needed as your mail server (default configuration will work fine with gmail smtp, you only have to edit the user name and pass) .
download:
usage:
you can now use all the functions that phpmailer supported. here is a the example that you will get in phpmailer site, but in ci format.
< ?php /* * Created on May 19, 2008 * * To change the template for this generated file go to * Window - Preferences - PHPeclipse - PHP - Code Templates */ class Action extends Controller { function Action() { parent::Controller(); } function testMailer() { error_reporting(E_ERROR); $this->load->plugin('phpmailer'); $mail=new PHPMailer(); /*$mail->IsSMTP(); $mail->SMTPAuth = true; // enable SMTP authentication $mail->SMTPSecure = "ssl"; // sets the prefix to the servier $mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server $mail->Port = 465; // set the SMTP port $mail->Username = "username@somedomain.com"; // GMAIL username $mail->Password = "xxxxxx"; // GMAIL password */ $mail->From = "username@somedomain.com"; $mail->FromName = "sender name"; $mail->Subject = "This is the subject"; $mail->Body = "Hi,This is the HTML BODY"; //HTML Body $mail->AltBody = "This is the body when user views in plain text format"; //Text Body //print_r($mail); $mail->WordWrap = 50; // set word wrap $mail->AddAddress("someone@somedomain.com"); $mail->AddReplyTo("username@somedomain.com","sender name"); $mail->AddAttachment("/path/to/file.zip"); // attachment $mail->AddAttachment("/path/to/image.jpg", "new.jpg"); // attachment $mail->IsHTML(true); // send as HTML if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message has been sent"; } } } ?> |


