2013-07-15 4 views
7

Я использую Codeigniter 2 для своего сайта. Когда вы отправляете электронное письмо нескольким пользователям, на клиенте (gmail, hotmail, ..), он показывает весь адрес на деталях, как я могу скрыть адреса, чтобы показать только адрес получателя.Отправка нескольких писем с помощью codeigniter

Благодаря

ответ

17

Использование ОЦК для отправки пакетных сообщений электронной почты, как это:

function batch_email($recipients, $subject, $message) 
{ 
    $this->email->clear(TRUE); 
    $this->email->from('[email protected]', 'Display Name'); 
    $this->email->to('[email protected]'); 
    $this->email->bcc($recipients); 
    $this->email->subject($subject); 
    $this->email->message($message); 

    $this->email->send(); 

    return TRUE; 

} 

$ получатели должны быть разделенный запятыми список или массив

Это означает, что вы получите копию по электронной почте, но все остальные получатели будут закрыты, поэтому не будут видеть адреса друг друга.

+11

Я не всегда отвечаю на вопросы, но когда я это делаю, пользователь, который разместил его, не возвращается, чтобы сказать мне, если помог :-( – whispersan

+0

спасибо @whisperson Sir! .. это избавит меня от времени ... и работает например, очарование! –

+0

Мне жаль, что я не смогу найти хороший, всеобъемлющий учебник по кодовому кодексу. Я просто не могу заставить ОЦК работать, и я попробовал списки и массивы с разделителями-запятыми. – TARKUS

6

Я думаю, что вы назначаете всех получателей в одном к методу, как

$this->email->to('[email protected], [email protected], [email protected]'); 

Это вышлет всем получателям сразу. Чтобы предотвратить показ всех получателей, отправить его отдельно для каждого пользователя, как показано ниже,

foreach ($list as $name => $address) 
{ 
    $this->email->clear(); 
    $this->email->to($address); 
    $this->email->from('[email protected]'); 
    $this->email->subject('Here is your info '.$name); 
    $this->email->message('Hi '.$name.' Here is the info you requested.'); 
    $this->email->send(); 
} 

Здесь $list содержит массив имя получателя и адрес электронной ID. Обязательно используйте clear() в начале каждой итерации.

+0

Похоже, вам не нужно отправлять отдельные письма каждому получателю, если это то, что должна делать ОЦК. – TARKUS

Смежные вопросы