| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 | <html><head><title>Examples using phpmailer</title></head><body bgcolor="#FFFFFF"><h2>Examples using phpmailer</h2><h3>1. Advanced Example</h3><p>This demonstrates sending out multiple email messages with binary attachmentsfrom a MySQL database with multipart/alternative support.<p><table cellpadding="4" border="1" width="80%"><tr><td bgcolor="#CCCCCC"><pre>require("class.phpmailer.php");$mail = new phpmailer();$mail->From     = "list@example.com";$mail->FromName = "List manager";$mail->Host     = "smtp1.example.com;smtp2.example.com";$mail->Mailer   = "smtp";@MYSQL_CONNECT("localhost","root","password");@mysql_select_db("my_company");$query  = "SELECT full_name, email, photo FROM employee WHERE id=$id";$result = @MYSQL_QUERY($query);while ($row = mysql_fetch_array ($result)){    // HTML body    $body  = "Hello <font size=\"4\">" . $row["full_name"] . "</font>, <p>";    $body .= "<i>Your</i> personal photograph to this message.<p>";    $body .= "Sincerely, <br>";    $body .= "phpmailer List manager";    // Plain text body (for mail clients that cannot read HTML)    $text_body  = "Hello " . $row["full_name"] . ", \n\n";    $text_body .= "Your personal photograph to this message.\n\n";    $text_body .= "Sincerely, \n";    $text_body .= "phpmailer List manager";    $mail->Body    = $body;    $mail->AltBody = $text_body;    $mail->AddAddress($row["email"], $row["full_name"]);    $mail->AddStringAttachment($row["photo"], "YourPhoto.jpg");    if(!$mail->Send())        echo "There has been a mail error sending to " . $row["email"] . "<br>";    // Clear all addresses and attachments for next loop    $mail->ClearAddresses();    $mail->ClearAttachments();}</pre></td></tr></table><p><h3>2. Extending phpmailer</h3><p>Extending classes with inheritance is one of the mostpowerful features of object-orientedprogramming.  It allows you to make changes to theoriginal class for yourown personal use without hacking the originalclasses.  Plus, it is veryeasy to do. I've provided an example:<p>Here's a class that extends the phpmailer class and sets the defaultsfor the particular site:<br>PHP include file: <b>mail.inc.php</b><p><table cellpadding="4" border="1" width="80%"><tr><td bgcolor="#CCCCCC"><pre>require("class.phpmailer.php");class my_phpmailer extends phpmailer {    // Set default variables for all new objects    var $From     = "from@example.com";    var $FromName = "Mailer";    var $Host     = "smtp1.example.com;smtp2.example.com";    var $Mailer   = "smtp";                         // Alternative to IsSMTP()    var $WordWrap = 75;    // Replace the default error_handler    function error_handler($msg) {        print("My Site Error");        print("Description:");        printf("%s", $msg);        exit;    }    // Create an additional function    function do_something($something) {        // Place your new code here    }}</td></tr></table><br>Now here's a normal PHP page in the site, which will have all the defaults setabove:<br>Normal PHP file: <b>mail_test.php</b><p><table cellpadding="4" border="1" width="80%"><tr><td bgcolor="#CCCCCC"><pre>require("mail.inc.php");// Instantiate your new class$mail = new my_phpmailer;// Now you only need to add the necessary stuff$mail->AddAddress("josh@example.com", "Josh Adams");$mail->Subject = "Here is the subject";$mail->Body    = "This is the message body";$mail->AddAttachment("c:/temp/11-10-00.zip", "new_name.zip");  // optional nameif(!$mail->Send()){   echo "There was an error sending the message";   exit;}echo "Message was sent successfully";</pre></td></tr></table></p></body></html>
 |