Если условие в теле письма phpmailer - PullRequest
0 голосов
/ 31 января 2020

Я использую Phpmailer, и в настоящее время я отправляю данные из своей базы данных по электронной почте. Однако мне нужно иметь цветовую кодировку в зависимости от выбранного условия. Например, если замечания продолжаются, ячейка данных должна быть зеленого цвета и красного цвета, если она удерживается. Я не совсем уверен, как применить, если я oop внутри эха. Пожалуйста, помогите

while ($rowwaf = mysqli_fetch_assoc($queryres)){
$mailbody = "
	Good Day!<br><br>
	Please see details below<br><br>
	<strong>Details:</strong><br><br>
	<table class=\"table\" cellpadding=\"5\" rules=\"all\" frame=\"box\" border=\"1\">
			
			<tr><td class=\"data\"><strong>REQUEST DATE:</strong></td><td>".$rowwaf["req_date"]."</td></tr>
			<tr><td class=\"data\"><strong>ISSUE ENCOUNTERED:</strong></td><td>".$rowwaf["issue"]."</td></tr>	
			<tr><td class=\"data\"><strong>URGENCY:</strong> </td><td>".$rowwaf["urgency"]."</td></tr>
			<tr><td class=\"data\"><strong>REQUESTOR:</strong></td><td>".$rowwaf["requestor"]."</td></tr>
    <tr><td class=\"data\"><strong>REMARKS:</strong></td>
    
    -- if condition sample--
    if {
    $rowwaf["remarks"] == proceed
    <td style="color: green">".$rowwaf["remarks"]."</td></tr>
    }
    else {
    $rowwaf["remarks"] == hold
    <td style="color: red">".$rowwaf["remarks"]."</td></tr>
    }
	";	
		

1 Ответ

1 голос
/ 31 января 2020

Вы можете просто установить переменную для своего цвета (также указанный вами код не будет работать):

<?php
if ($rowwaf['remarks'] === 'proceed') {
   $color = 'green';
} elseif ($rowwaf['remarks'] === 'hold') {
   $color = 'red';
}
?>

Затем используйте переменную $ color в вашем html

Я также рекомендовал бы использовать heredo c синтаксис , чтобы создать свое тело, и использовать php переменные, чтобы сделать что-то вроде:

$mailbody = <<<EOF
<td style="color: {$color}">{$rowwaf['remarks']}</td>
EOF;
...