Problem mit CMS Mailer

Hilfe zu Modulen und Tags
Post Reply
hoshy

Problem mit CMS Mailer

Post by hoshy »

Hallo, mal eine Frage an die "Programmierer" unter euch...
Ich arbeite gerade an einem eigenen Modul.
Es soll unter anderem Mails an einige FrontEndUser versenden.
Die Mails werden an die jeweiligen Email-Adressen der FrontEndUser versendet.
Das funktioniert auch. Soweit so gut.

Allerdings gibt es da ein Problem.
Ich versende die Mails in einer foreach-Schleife.

Also z.B.:

Code: Select all


$cmsmailer = $this->GetModuleInstance('CMSMailer');
foreach($users_array as $user)
{
     $bodytext = 'Hallo '.$user['name'].'! Blah...';
     
     $cmsmailer->AddAddress($user['email']);
     $cmsmailer->SetBody($bodytext);
     $cmsmailer->IsHTML(true);
     $cmsmailer->SetSubject('Blah!');
     $cmsmailer->Send();
}

Beim ersten User in dem Array $users_array klappt alles ohne Probleme.
Komischerweise kommen aber bei jedem nachfolgenden User auch die Mails der vorherigen User an.
Also der zweite User erhält die Mail von User-1 und seine.
Der dritte User von User-1, User-2 und seine Mail...
Bis der letzte User natürlich alle Mails bekommt.

Das ist defnitiv nicht richtig so.
Und ich weiß nicht, ob es ein Fehler im CMS Mailer oder in meinem Code ist.
Ich habe mit unset($cmsmailer); am Ende der foreach-Schleife versucht die Variable jedesmal komplett zu löschen.
Leider ohne Erfolg.
Ich habe außerdem versucht, die variable $cmsmailer als Array zu definieren, sodass es für jeden User eine eigene Instanz des CMS Mailer Moduls gibt:

Code: Select all


foreach($users_array as $user)
{
     $bodytext = 'Hallo '.$user['name'].'! Blah...';

     $cmsmailer[$user['id']] = $this->GetModuleInstance('CMSMailer');     
     $cmsmailer[$user['id']]->AddAddress($user['email']);
     $cmsmailer[$user['id']]->SetBody($bodytext);
     $cmsmailer[$user['id']]->IsHTML(true);
     $cmsmailer[$user['id']]->SetSubject('Blah!');
     $cmsmailer[$user['id']]->Send();
}

Ebenfalls kein Erfolg.
Mir gehen die Ideen aus.
Langsam bin ich am Verzweifeln.
Wo liegt der Fehler?
Kann mir da jemand einen Schubs in die richtige Richtung geben?
NaN

Re: Problem mit CMS Mailer

Post by NaN »

Ich bin mir nicht sicher, aber nachdem ich mir den Quellcode des CMS Mailer Moduls angeschaut habe, konnte ich mit meinen Bescheidenen "Programmierkenntnissen" keinen Fehler entdecken.
Allerdings ist mir da eine Funktion namens reset() aufgefallen.
Versuchs mal mit $cmsmailer->reset(); am Ende der foreach-Schleife.
Andiministrator

Re: Problem mit CMS Mailer

Post by Andiministrator »

Hast Du schonmal die Funktion
    ClearAddresses()
versucht, am besten vor der Funktion AddAddress() ?
Post Reply

Return to “Module und Tags”