Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wysłanie funkcją mail obrazka
Forum PHP.pl > Forum > PHP
berti28
Witajcie mam formularz rejestracyjny który po wypełnieniu przez użytkownika automatycznie wysyła na jego konto pocztowe wiadomość.

if(mail("$email", 'Witaj', "$wiadomosc"))
{
echo 'Wiadomość została wysłana';
}

Wysyła dość prymitywną wiadomość, chciałbym żeby to był obrazek wykonany przeze mnie w formacie jpg, png.
Jak to zrobić?
Tomplus
zamiast używać mail() który jest coraz częściej blokowany na hostingach, to zastosuj jakąś bibliotekę poczty:
PHPMailer, albo SwiftMailer.
Tam jest opcja dołączania obrazków i innych załączników.
W sposób prosty i szybki. Działający w 100%.

A jak coś jak wrzucasz do funkcji zmienną, to nie musisz jej okalać cudzysłowiem:

  1. mail($email, $topic, $message);
bostaf
Ja za Tomplusem bym polecił jakąś bibliotekę, ale jeśli chcesz poćwiczyć i zrozumieć co tam się dzieje, to zacznij od lektury manula. To początek, ale już dowiesz się o parametrze "$dodatkowe_naglowki" czyli "$headers". Te dodatkowe nagłówki są niezbędne, żeby skomponować bardziej zaawansowanego emaila. Z nagłówkami już można wstawiać obrazki do emaila w formacie html, chociaż to nie zawsze rozwiązuje problem. Nagłówków jest całkiem sporo. Doczytaj. A na poczętek spróbuj tak:
1. Dodaj czwarty parametr do mail():
  1. $dodatkowe_naglowki = "Content-Type: text/html; charset=UTF-8\r\n";

2. $wiadomosc skomponuj w formacie html, podając bezwzględny URL do obrazka, np.:
  1. $wiadomosc = '<html><body>';
  2. $wiadomosc .= '<img src="http://www.bezwzgledny.url/do/twojego/obrazka.jpg" />';
  3. $wiadomosc .= 'A tu treść';
  4. $wiadomosc .= "</body></html>";

...no i wyślij
  1. if(mail($email, 'Witaj', $wiadomosc, $dodatkowe_naglowki))
  2. {
  3. echo 'Wiadomość została wysłana';
  4. }
berti28
Serdeczne dzięki Problem rozwiązany!!! Zamykam temat!!! Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.