Различное имя в HTML и обычном тексте при отправке электронной почты

У меня проблема при отправке электронной почты через цикл. Я получаю другое имя пользователя в HTML и текстовом формате.

Это мой контроллер
функция report () {

    $this->load->model('Searchmonitoring_db');
$results = $this->Searchmonitoring_db->getLogs();

if (!$results)
return false;

$this->load->library('email');
$config['mailtype'] = 'html';
$this->email->initialize($config);

foreach ($results as $result) {

$fname = $result['fname'];
$username = $result['username'];
$subject_keyword = $result['grpname'];

if ($subject_keyword == "") {

$findfields['clientid'] = $result['clientid'];
$findfields['grouping'] = $result['grouping'];
$keywords = $this->Searchmonitoring_db->getKeywords($findfields);

if ($keywords['db']) {
foreach ($keywords['db'] as $kw) {
if ($subject_keyword != "")
$subject_keyword .= ", ";
$subject_keyword .= $kw['query'];
}
}
}

$this->email->clear(TRUE);

$managerEmail = $result['manager_email'];
$manager = $result['manager'];
$salespersonEmail = $result['salesperson_email'];
$salesperson = $result['salesperson'];
$clientEmail = $result['email'];

if($managerEmail) {
$this->email->from($managerEmail, $manager);
} elseif($salespersonEmail) {
$this->email->from($salespersonEmail, $salesperson);
}

$this->email->to($clientEmail);$arrfname = explode("/", $fname);
$subject = "Your $subject_keyword monitoring report";
$this->email->subject($subject);
$message = $this->load->view('emailtemplate', $result, true);
$this->email->message($message);
$this->email->attach("../export/$username/" . end($arrfname) . ".zip");

if ($this->email->send()) {
$update['id'] = $result['logid'];
$searchlog['result'] = 'Sent';
$this->Searchmonitoring_db->updateLog($update, $searchlog);
}
}
}

Это мой шаблон электронной почты

<html>
<body>

<p>Hi <?php echo $firstname; ?></p>
<p>Thanks for your business!</p>
<p>
<?php
if($manager) {
echo nl2br($manager_email_signature);
} elseif($salesperson) {
echo nl2br($salesperson_email_signature);
} ?>
</p>
</body>
</html>

Я также использую почтовую штемпель для мониторинга своих электронных писем, и когда я щелкаю по электронной почте, формат html получает правильное имя, но когда я щелкаю по текстовому формату, он имеет неправильное имя.

пример:
HTML: говорит «Привет, Джек, спасибо за ваш бизнес».
простой текст: «Привет, Андерсон, спасибо за ваше дело».

Я заметил, что обычный текст получает имя первого письма в цикле

0

Решение

Попробуйте использовать:

  $this->email->set_alt_message('This is the alternative message');
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]