0

I need to send an automated mail after each registration and within the message variable, I'll need to run a while loop of all the product registered for.

Here is the code:

<?php


$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Course booking mail</title>
<style type="text/css">.course_list_tbl {border:1px solid #BAC2CC;}</style></head>
<body marginheight="0" topmargin="0" marginwidth="0" leftmargin="0" style="margin: 0px; background-color: #eee; background-repeat: repeat; color:#56667d; font-size:14px;">
<table cellspacing="0" border="0" cellpadding="0" width="100%"><tr><td>
<table width="650" cellspacing="0" cellpadding="0" border="0" align="center" style="border-width: 3px; border-color: #ffffff; border-style: solid;">
  <tr><td style="background:#F3F3F3; border-bottom:1px solid #BAC2CC;">
<table width="650" border="0"><tr><td>
<img src="http://www.og-softskills.com/gcom/images/ogs_mail.png" style="margin:0; margin-left:10px; margin-top: 4px; display: block;" alt="" />
</td>
    <td style="color:#2a186e;"><h2>Altous Solutions</h2></td>
  </tr></table></td></tr>
  <tr>
    <td style="background:#c8cfd8; color:#2a186e;" valign="middle"><h3 style="text-shadow: #ffffff 0px 1px 0px; margin-left:10px;">Your Order Information</h3></td>
  </tr>
  <tr><td style="padding:5px 10px;">
    <p>
    Course Booking Successfully Completed! You have successfully registered 3 candidate for 2 Open Courses and also booked for 1 In-house Course. Thank You!
    </p>
    </td></tr><tr><td>
    <h4 style="margin-left:25px; margin-bottom:0px;">Open Course</h4>
    <table width="600" border="0" cellspacing="0" cellpadding="0" align="center" class="course_list_tbl">
  <tr>
    <th scope="col" class="course_list_tbl" width="5%">s/n</th>
    <th scope="col" class="course_list_tbl">Course</th>
    <th scope="col" class="course_list_tbl">Actions</th>
  </tr>';

$message .= if($pubc_row_count > 0){
    $pub_sn = 1;

while($get_pubc_bookings_info_row = @mysql_fetch_assoc($get_pubc_bookings_info_query)){

$org_id = user_info('id');

$get_pubc_bk_id = $get_pubc_bookings_info_row['booking_id'];
$get_pubc_c_id = $get_pubc_bookings_info_row['course_id'];  
$get_pubc_c_title = $get_pubc_bookings_info_row['title'];

 echo '<tr><td>'.$pub_sn.'</td> <td>'.$get_pubc_c_title.'</td><td class="bk_action_lnk"><a href="pubc_reg_invoice.php?bk_id='.$get_pubc_bk_id.'&amp;org_id='.$org_id.'&amp;c_id='.$get_pubc_c_id.'" target="_blank">Print Invoice</a> <a href="pubc_invoice_pdf.php?bk_id='.$get_pubc_bk_id.'&amp;org_id='.$org_id.'&amp;c_id='.$get_pubc_c_id.'" target="_blank">Invoice in PDF</a> <div class="clear"></div></td></tr>';

++$pub_sn;

}

};

$message .= '</table></td>/tr>
  <tr>
    <td style="padding:5px 10px;">
    <p>
    For further enquiries, contact us via: <br /> 909-804-6416, 555-330-4541 <br /> Email: [email protected] 
    </p>
    </td></tr>
    <tr>
    <td align="center" style="border-top:2px solid #BAC2CC; border-bottom:2px solid #BAC2CC;">
    <p  style="font-size:12px;"><strong style="font-weight:bold;">Altous Solution</strong> <br>
 5th Floor, Pole Plaza.</p>
    </td>
  </tr></table></td></tr></table></body></html>';


?>

It's very certain, this will not fly cos appending the if statement and while loop within the variable "message" will hit a brick wall with the syntax error there. So I'm really blank on how to get this done.

Would appreciate some help with this...Thanks!

2 Answers 2

1
<?php


$message = 'part of string';

if(some condition){
   $message  .= 'Other part of string';
}

while(some condition){
    $message  .= $var.'Other part of string';
}

echo $message; // will give you ful string

?>
Sign up to request clarification or add additional context in comments.

Comments

0

Prasanth Bendra's answer is basically correct; you want to divide your message up into different parts, the message header, the variable parts and the footer part; then have some code where you control the insertion of these parts.

To improve, you could have these parts either in the file system or in the database, which means that you don't need to modify your code when you want to adapt your message.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.