Welcome to the nuBuilder forums!

Please register and login to view forums and other content only available to registered users.

Sending HTML email

Locked
armstrs01
Posts: 20
Joined: Tue Jul 14, 2015 5:00 pm

Sending HTML email

Unread post by armstrs01 »

I have a nuBuilder Pro app that sends emails to users when certain events occur (e.g. an item ships from our stores). I would like to send these emails as formatted HTML, rather than plain text. However, if I embed HTML tags in the message body (see code below), these just apear in the email as text. Are there any settings, either in nuBuilder on the server that I need to change in order for the email to be sent as HTML?

Many thanks,
Simon Armstrong.

//**** SEND EMAIL TO LOGISTICS ****
$resuser = '#nu_user_name#';

//get mail sender name
if ($resuser == "globeadmin" ){
$mail_sender = "xxxxxxxxxxxxxxx@xxxxxxxxxxx.co.uk";
// nuDebug("admin $resuser");
} else {
// nuDebug("regular $resuser");
$usersql = "select * from zzzsys_user
where sus_name = '$resuser';
";
// nuDebug("sql $usersql");
$userobj = nuRunQuery($usersql);
$userdata = db_fetch_object($userobj);

$mail_sender = $userdata->sus_email;
}
// nuDebug("sender $mail_sender");

//set mail recipient for team inbox
$mail_recipient = "xxxxxxxxxxx.infrastructure@xxxxxxxxxxx.co.uk";

//nuDebug("mail recipient = $mail_recipient");

//set reserve id to add to subject line
//$resid = '#Reserve_ID#';
$resid = '#RECORD_ID#';

//test sending basic email
//nuEmail("",$mail_recipient, "STOCK REQUEST NOTIFICATION NoB_Reserve: $resid", "$resuser requested some stock", "");
//nuEmail("",$mail_sender, "STOCK REQUEST NOTIFICATION NoB_Reserve: $resid", "You requested some stock", "");

//Get reserve project info
$mailsql = "select * from dbreserve
join dbprojects
on dbreserve.Project_ID = dbprojects.Project_ID
where dbreserve.Reserve_ID = '#RECORD_ID#';
";

//nuDebug($mailsql);
$mail = nuRunQuery($mailsql);

//Get list of reserved items
$mailsql2 = "select * from dbreserveasset
join dbreserve
on dbreserveasset.Reserve_ID = dbreserve.Reserve_ID
join dbproduct
on dbreserveasset.Product_ID = dbproduct.Product_ID
join dbsplit
on dbreserveasset.SendTo = dbsplit.Split_ID
where dbreserveasset.Reserve_ID = '#RECORD_ID#';
";

$mail2 = nuRunQuery($mailsql2);
$howmany = db_num_rows($mail2);

//get project data
$mail_data1 = db_fetch_object($mail);
$project_name = $mail_data1->ProjectName;
$project_desc = $mail_data1->ProjectDescription;

//get item data
$mail_data2 = db_fetch_object($mail2);
$desp_location = $mail_data2->BinArea_Name;
$order_qty = '#outQty#';
$reserve_date = '#ReservedOnDate#';

//generate email
if ('#nu_new_record#' == 0){
//record has been amended
$mail_subject = "NoB: Notification: AMENDED Stock Request $project_name $project_desc NoB Reserve ID: $resid";

/* $mail_message = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
<title></title>
<style></style>
</head>";*/

/*

// $mail_messsage = "<body leftmargin='20' marginwidth='0' topmargin='0' marginheight='0' offset='0'>
$mail_messsage = "<table border='0' cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td align='Left'><img src='http://xxxxxxxxxxxxxxxxxxxxxxxxxx:8088/ ... x_Logo.jpg' alt='xxxxxxxxxxx Logo' height='60' width='235'></td>
<td align='Centre'></td>
<td align='Right'><img src='http://xxxxxxxxxxxxxxxxxxxxxxxxxx:8088/ ... medium.png' alt='NoB Logo' height='62' width='212'></td>
</tr>
<tr>
<td></td>
";

$mail_message .= " <td align='Centre'><font face='Arial' size='4'><b>Amended Stock Request</b></font></td>
<td></td>
</tr>
</table>
";

$mail_message .= " </tr>
</table>
<font face='Arial' size='2'>
<p><b>Requestor:</b> $resuser</p>

<p>Has amended the stock request for project: <b>$project_name $project_desc.</b></p>

<p><b>Reserve ID:</b> $resid</p>

<p>$howmany : Requested Item(s):</p>
";


// $mail_message = "$resuser has amended stock request for $project_name $project_desc project. Reserve ID: $resid \n\n";
} else {
//record is new
$mail_subject = "NoB: Notification: NEW Stock Request $project_name $project_desc NoB Reserve ID: $resid";

$mail_messsage = "<table border='0' cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td align='Left'><img src='http://xxxxxxxxxxxxxxxxxxxxxxxxxxx:8088 ... x_Logo.jpg' alt='xxxxxxxxxxx Logo' height='60' width='235'></td>
<td align='Centre'></td>
<td align='Right'><img src='http://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx:80 ... medium.png' alt='NoB Logo' height='62' width='212'></td>
</tr>
<tr>
<td></td>
";

$mail_message .= " <td align='Centre'><font face='Arial' size='4'><b>Stock Request</b></font></td>
<td></td>
</tr>
</table>
";

$mail_message .= " </tr>
</table>
<font face='Arial' size='2'>
<p><b>Requestor:</b>$resuser</p>

<p>Has requested stock for project: <b>$project_name $project_desc.</b></p>

<p><b>Reserve ID:</b> $resid</p>

<p>$howmany : Requested Item(s):</p>
";


// $mail_message = "$resuser has requested stock for $project_name $project_desc project. Reserve ID: $resid \n\n";
}

//$mail_message .= "$howmany : Requested Item(s):\n\n";

//print first item, you have already fetched it from the results object
$mail_message .= " <table border='2' cellpadding='0' cellspacing='0' width='100%'>
<tr>
<b>
<td align='Centre'>QTY</td>
<td align='Left'>Part No.</td>
<td align='Left'>Description</td>
<td align='Left'>Send To</td>
<td align='Left'>Required Date</td>
</b>
</tr>
";

$mail_message .= " <tr>
<td align='Centre'>$mail_data2->ReserveQty</td>
<td align='Left'>$mail_data2->PartNumber</td>
<td align='Left'>$mail_data2->ModelDesc</td>
<td align='Left'>$mail_data2->SplitDescription</td>
<td align='Left'>$mail_data2->RequiredDate</td>
</tr>
";

//$mail_message .= "$mail_data2->ReserveQty x $mail_data2->PartNumber : $mail_data2->ModelDesc - to be sent to: $mail_data2->SplitDescription : Required On: $mail_data2->RequiredDate : Alt Item? (0 = No, 1 = Yes): $mail_data2->altItem \n";
//loop through reserved asset records and list items in email
while ($record = db_fetch_object($mail2)) {
$mail_message .= " <tr>
<td align='Centre'>$record->ReserveQty</td>
<td align='Left'>$record->PartNumber</td>
<td align='Left'>$record->ModelDesc</td>
<td align='Left'>$record->SplitDescription</td>
<td align='Left'>$record->RequiredDate</td>
</tr>
";
// $mail_message .= "$record->ReserveQty x $record->PartNumber : $record->ModelDesc - to be sent to: $record->SplitDescription : Required On: $record->RequiredDate : Alt Item? (0 = No, 1 = Yes): $record->altItem \n";
}

$mail_message .= " <tr> </tr>
</table>
<p>The Infrastructure Logistics team will review your request as soon as possible.
You will receive further communications as your order progresses.</p>
<p><b>Please Note: Our inbox is monitored Monday to Friday, 8:30am until 5pm.</b></p>
Under normal circumstances, Infrastructure Logistics make two deliveries to each CPK DC every day;
one mid-morning and one mid-afternoon.
<p>The agreed slots are:</p>
For the mid-morning delivery slot: all requests should be made by 10am.</p>
For the mid-afternoon delivery slot: all requests should be made by 1pm.</p>

<p>Best regards,</p>
<b>xxxxxxxxxxx Infrastructure Logistics</b>


</font>
</body>";

nuEmail("",$mail_sender, $mail_subject, $mail_message, "");
shane
Posts: 100
Joined: Mon Jun 15, 2009 10:04 am

Re: Sending HTML email

Unread post by shane »

I have just updated nuBuilderPro to make it easier to send html emails.

First you need to do an update by clicking on the update button inside nuBuilder then follow the documentation that I have also just updated here

http://wiki.nubuilder.net/nubuilderv3/i ... D_false.29
armstrs01
Posts: 20
Joined: Tue Jul 14, 2015 5:00 pm

Re: Sending HTML email

Unread post by armstrs01 »

Ok, great. I'll give it a try and let you know how I get on.
admin
Site Admin
Posts: 2781
Joined: Mon Jun 15, 2009 2:23 am
nuBuilder Version: 4.5
Been thanked: 1 time

Re: Sending HTML email

Unread post by admin »

.
Locked