Asi to nepatrí celkom do php, ale najskôr tu sa nájde niekto, kto možno poradí. Prípadne poprosím o presunutie.
Snažím sa odoslať dva e-maily. Jeden návštevníkovi webovej stránky, druhý mne. Chcem, aby ten druhý email, ktorý pôjde mne, mal v prílohe celý ten prvý email - kompletný ( aj s prílohami, ak budú)
PHPMailer class som rozšíril o metudu Save(), ktorá mi vráti head+body. (Predpokladám, že to je práve to eml - message/rfc822 - došiel som k tomu tak, že som uložil email na disk, a pozrel, ako ten súbor vyzerá, heh.)
class cl_plg_PHPMailer extends PHPMailer
{
..
function Save()
{
$this->SetMessageType(); // neviem celkom čo to robí, ale takto to funguje...
return $this->CreateHeader() . $this->CreateBody();
}
...
}
Ok, prvý email odošlem a druhý potom vytváram tako:
$email_1->send();
$email_2 = new cl_plg_PHPMailer();
$email_2->...
$email_2->AddStringAttachment(
$email_1->save(),
'priloha.eml',
'base64',
'message/rfc822'
);
$email_2->send();
// AddStringAttachment($string, $filename, $encoding = 'base64', $type = 'application/octet-stream')
Problém bol ten, že email vôbec neprešiel. mailserver to stopol, EML - blokovaná príloha. Server neodoslal ale žiadne upozornenie späť, že bol email zablokovaný, proste nič (netypické). Keď som ale nechal $type = 'application/octet-stream', tak email prešiel. Akurát mailový klient mi neumožnil prílohu otvoriť ako email - iba mi dovolil spraviť save na disk. Ak som po tom eml na disku poklikal, nabehol mi outlook express, a ten mail sa otvoril.
=> z toho že sa to EML zablokovalo mi nejako vyplynulo, že eml, asi nebude ten pravý formát pre email v prílohe. Veď bežne prijímam emaily s emailom v prílohe a nezablokuje ich. Napriek tomuto ciťáku som skúsil toto:
Myslel som že to vyriešim tak, že na mail serveri to blokovanie EML, zruším. Stalo sa, mail potom prešiel, a aj sa zobrazoval ako email (mal ikonku obálky), ale miesto názovu súboru - prílohy - bol mišung znakov a aj keď som sa pokúsil tú prílohu otvoriť nabehlo okno s pomotanými znakmi. (mailový klient sa zrejme pokúsil nahradiť názov súboru/prílohy za subject emailu v prílohe, ale nepodarilo sa)..
Nejako už neviem, kam ďalej, no stále mám pocit, že ide o primitívny problém (mail s mailom v prílohe). Vytrápil som tým už dobrého pol dňa a výsledky žiadne :-(
Vedel by niekto poradiť?