Jump to content

PHPMailer and query results in html body


tommy2shoes

Recommended Posts

Hi

 

I am sure this is very simple but it's got me beat!

 

I have a page that sends emails to people with their account details. I can get it to work fine with straight plain text but would like it in HTML and I can't get the username and password details into the body of the email. I'm sure it's just a formatting issue but I've tried many things and it fails!!

 

Any suggestions very welcome. The code is below.

 

Many thanks in advance.

 

<?php

// MAIL TO AP

require_once '../phpmailer/class.phpmailer.php';

 

$mail                = new PHPMailer();

 

if(isset($_GET['idcode'])){

  $idcodepassed = $_GET['idcode'];

}else{

  $idcodepassed = 111111; // set this to your default value if no URL value is present

}

 

 

mysql_select_db($database_process, $process);

$result = mysql_query("SELECT  applicantid, idcode, type, company, email, CONCAT('pdf_document_',idcode) AS linkname, length, username, password, DATE_FORMAT(applicationdate,'%D %M %Y') AS formattedDate, parties

                    FROM applicant

                    WHERE idcode = '$idcodepassed'

                    LIMIT 1

                    ");

 

while($row = mysql_fetch_array($result))

  {

    $appid = $row['applicantid'];

    $idcode = $row['idcode'];

    $type = $row['type'];

    $company = $row['company'];

    $email = $row['email'];

$term = $row['length'];

$username = $row['username'];

$password = $row['password'];

$appdate = $row['formattedDate'];

$parties = $row['parties'];

  }

 

 

 

// $body                = file_get_contents('EmailTextAP.php');

// $body                = eregi_replace("[\]",'',$body);

 

$body = '<html><p>This email TO AP is confirmation of your appointment of Clear Appointments as your agent for service of process under the agreement between $parties.  Our appointment starts on $appdate and you have appointed us for $term years from this date. We have attached our letter of confirmation to this email for your records.</p>

<p>You can log into your account on our website (<a href=\"http://www.clearappointments.co.uk\">www.clearappointments.co.uk</a>) at any time to review your documents and change your contact details. Your user name is:???  and your password is ???.</p>

<p>We appreciate your custom and hope that you will use us again.</p>

<p>Kind regards</p>

<p>Clear Appointments Team<br />

 

';

 

  $mail->SetFrom('[email protected]', 'Clear Appointments');

  $mail->AddReplyTo('[email protected]', 'Clear Appointments');

// set the subject of the email

$mail->Subject      = "Process Agent Letter of Confirmation Attached";

 

@MYSQL_CONNECT("localhost","lawwork1_graham","733576");

@mysql_select_db("lawwork1_process");

$query  = "SELECT company, email FROM applicant WHERE idcode='$idcodepassed'";

$result = @MYSQL_QUERY($query);

 

 

// sets name and location of attachment

$directory = '../docs/';

$docname = 'Confirmation_Letter_'. $idcodepassed . '.pdf';

$invname = 'Invoice_' . $idcodepassed . '.pdf';

$send=$directory.$docname;

$sendinvoice=$directory.$invname;

 

while ($row = mysql_fetch_array ($result)) {

  $mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test

  $mail->MsgHTML($body);

  $mail->AddAddress($row["email"]);

//  $mail->AddAddress($row["instemail"]);

 

      // attachment

    // $mail->AddAttachment($send);

    // $mail->AddAttachment($sendinvoice);

  $mail->AddAttachment($send);      // attachment

//  $mail->AddAttachment($sendinvoice); // attachment

 

  if(!$mail->Send()) {

    echo "Mailer Error (" . str_replace("@", "&#64;", $row["email"]) . ') ' . $mail->ErrorInfo . '<br>';

  } else {

    echo "";

//     echo "Message sent to :" . $row["full_name"] . ' (' . str_replace("@", "&#64;", $row["email"]) . ')<br>';

  }  // Clear all addresses and attachments for next loop

  $mail->ClearAddresses();

  $mail->ClearAttachments();

}

 

?>

Try this:

$body = "<html><body><p>This email TO AP is confirmation of your appointment of Clear Appointments as your agent for service of process under the agreement between $parties.  Our appointment starts on $appdate and you have appointed us for $term years from this date. We have attached our letter of confirmation to this email for your records.</p>
<p>You can log into your account on our website (<a href=\"http://www.clearappointments.co.uk\">www.clearappointments.co.uk</a>) at any time to review your documents and change your contact details. Your user name is: $username and your password is: $password.</p>
<p>We appreciate your custom and hope that you will use us again.</p>
<p>Kind regards</p>
<p>Clear Appointments Team</p>
</body></html>";

Are the username and password the only things that don't show up?

 

PS: next time, use


tags around your code.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.