mam maila z załącznikiem, załącznik oczywiście zakodowany w base 64. czy jest możliwość użycia tego załącznika(jest to zdjęcie) w tym mailu nie działa. jak się do niego odwołać? czy trzeba to może (tak jak pisałem wcześniej ) zdekodować gdzieś u użytkownika na komputerze?
to nie wysyłaj jako załącznik (typ cośtam attachment czy coś) tylko oddzielna część wiadomości (tj. typ normalnie image/jpeg czy coś) i dodatkowo w tym przy tej części za boundary w nagłówkach części z obrazkiem dodaj nagłówki, że wszystkie by wyglądały tak:
Content-Type: image/jpeg; name="plik.jpg"
Content-Transfer-Encoding: base64
Content-Location: plik.jpg
i potem jak w wiadomości wpiszesz to powinno pokazać obrazek z tej części wiadomości, ale lepiej w ogóle tego obrazka do wiadomości nie pakować tylko normalnie odwołać się do adresu www, tyle że w nowym outlooku np trzeba będzie wtedy kliknąć przy dom. opcjach pokaż obrazki
function SendEmail($from, $to, $subject, $text)
{
$boundary = "___qwerty^123^ytrewq_123__";
$filename_name = "aaaaaaa.jpg";
$file = "http://www.adres.pl/images/aaaaaaa.jpg";
$plik = file_get_contents($file);
$encoded = chunk_split(base64_encode($plik));
$headers = "From: $from\n";
$headers .= "MIME-version: 1.0\n";
$headers .= "boundary=\"$boundary\"\n";
$headers .= "Content-type: multipart/mixed\n";
$headers .= "Content-transfer-encoding: 8bit\n";
$headers .= "X-attachments: $filename_name;\n\n";
$text = nl2br ($text);
$text = stripslashes ($text);
$msg = "--" . $boundary . "\n";
$msg .= "Content-Type: text/html; charset=iso-8859-2\n\n";
$msg .= $text . "\n";
$msg .= "--" . $boundary . "\n";
$msg .= "Content-type: image/jpeg; name=\"$filename_name\";\n";
$msg .= "Content-Transfer-Encoding: base64\n";
$msg .= "Content-Location: aaaaaaa.jpg";
$msg .= $encoded . "\n";
$msg .= "--" . $boundary . "\n";
if(mail($to, $subject, $msg, $headers))
return true;
return false;
}
nie wiem jak to tutaj umieścić, nie pasuje mi to do head, cos. moze teraz bedzie latwiej? w zmiennej text która jest przekazywana do tej funkcji jest oczywiście ktore to chce zeby to ten zalacznik wyswietlilo.
a zamiast:
"Content-Location: aaaaaaa.jpg";
daj np:
"Content-Location: http://www.cos.pl/aaa.jpg";
i odwołuj się
w tym małym nagłówku dla załącznika dajesz:
Content-ID: CosTam123456789
a w tresci html:
<img src="cid:CosTam123456789">