Korzystanie z funkcji poczty w PHP na Ubuntu

Korzystanie z funkcji poczty w PHP na Ubuntu

Funkcja Mail () to wbudowana funkcja PHP, która służy do wysyłania wiadomości e-mail z LocalHost. Ale niektóre konfiguracje są wymagane do wysyłania wiadomości e -mail za pomocą tej funkcji. Będziesz potrzebował informacji o serwerze pocztowej do konfiguracji konfiguracji. Możesz użyć informacji o serwerze pocztowym aktywnego serwera hostingowego lub możesz użyć dowolnych informacji o bezpłatnym serwerze pocztowym. Konto Gmail i informacje o serwerze SMTP Gmaila są używane w tym samouczku do wysyłania wiadomości e -mail za pomocą funkcji poczty ().

Konfiguracja konfiguracji

Do modyfikacji będą wymagane dwa pliki w celu skonfigurowania konfiguracji: php.ini Plik i inny plik jest wymagany do skonfigurowania serwera poczty. Postępuj zgodnie z poniższymi krokami, aby skonfigurować konfigurację. Wiele pakietów jest dostępnych w PHP do wysyłania wiadomości e -mail. MSMTP jest klientem serwera pocztowego PHP, który jest używany w tym samouczku do wysyłania wiadomości e -mail za pomocą funkcji PHP Mail ().

Kroki:

Uruchom następujące polecenie, aby zainstalować MSMTP Pakiet na Ubuntu w celu skonfigurowania serwera poczty:

$ sudo apt-get instaluj msmtp

Utwórz plik konfiguracyjny z nazwanem /etc /msmtprc za pomocą następującego polecenia:

$ sudo nano /etc /msmtprc

Dodaj następującą zawartość do pliku. Dodaj prawidłowy adres e -mail dla użytkownik i prawidłowe hasło dla hasło które zostaną użyte do wysłania wiadomości e -mail. Ustaw adres e -mail nadawcy formularz wartość.

domyślne
tls on
tls_starttls on
tls_trust_file/etc/ssl/certs/ca-certyfikaty.crt
konto domyślnie
gospodarz SMTP.Gmail.com
Port 587
Auth on
nazwa uż[email protected]
hasło_sword
z Sender_Email_Address

Uruchom następujące polecenia, aby ustawić własność i zgodę na /etc/msmtprc plik:

$ sudo chown fahmida /etc /msmtprc
$ sudo chmod 0600 /etc /msmtprc

Otworzyć php.ini Plik i zmodyfikuj następującą zawartość za pomocą następujących wartości:

SMTP = SMTP.Gmail.com
SMTP_PORT = 587
sendmail_path = "/usr/bin/msmtp -t -i"

Składnia:

Bool Mail (String $ do, string $ temat, string $ message [, mixed $ dodatkowe_headers [, string $ dodatkowe_parameters]]))

Ta funkcja może wziąć cztery argumenty. Pierwszy argument przyjmuje adres e -mail odbiorcy. Drugi argument przyjmuje temat e -maila. Trzeci argument przyjmuje ciało e -mail. Ostatni argument jest opcjonalny i zawiera dodatkowe informacje o wiadomości e -mail jako ciąg lub tablicy.

Wysyłanie wiadomości e -mail za pomocą funkcji poczty ()

Różne przykłady wysyłania wiadomości e -mail za pomocą funkcji poczty () PHP pokazano w tej sekcji samouczka.

Przykład 1: Wyślij prosty e -mail tekstowy

Ten przykład pokazuje, w jaki sposób można wysłać prosty e -mail tekstowy za pomocą funkcji poczty (). Utwórz plik PHP z następującym skryptem.

Musisz ustawić prawidłowy adres e -mail $ do zmienna, aby uzyskać wyjście następującego skryptu. Prosty tekst jest ustawiany jako ciało wiadomości.

// Ustaw adres e -mail Reciever
$ do = "[email protected] ";
// Ustaw temat e -maila
$ tematy = "To jest testowy e -mail";
// Ustaw korpus e -mail
$ message = "To testowanie ciała e -mail";
// Ustaw informacje o nagłówku
$ Headers = "od: [email protected] \ r \ n ";
$ nagłówki .= "Odpowiedź-to: [email protected] \ r \ n ";
// Wyślij e -mail za pomocą funkcji wiadomości wiadomości ()
if (poczta ($ do, $ podmiot, $ wiadomość, $ nagłówki))

Echo „E -mail wysłał pomyślnie.\ r \ n ”;

w przeciwnym razie
Echo „e -mail nie wysłał.
";

?>

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu z serwera internetowego, jeśli funkcja poczty () działa poprawnie.


Pojawi się następujące dane wyjściowe, jeśli sprawdzisz skrzynkę odbiorczą adresu e -mail, który został ustawiony jako adres e -mail odbiornika.

Przykład 2: Wyślij sformatowany e -mail HTML

Ten przykład pokazuje, w jaki sposób sformatowany e -mail HTML można wysłać za pomocą funkcji poczty (). Utwórz plik PHP z następującym skryptem.

$ wiadomość Zmienna jest inicjowana z zawartością HTML, która zostanie wysłana jako organ e -mail. Jest wspomniany w $ nagłówek Zmienna, że ​​treść wiadomości e -mail to HTML.

// Ustaw adres e -mail Reciever
$ do = "[email protected] ";
// Ustaw temat e -maila
$ temat = „Rejestracja udana”;
// Ustaw korpus e -mail
$ message = '

Twoja rejestracja została zakończona pomyślnie.


Nazwa użytkownika = Fahmida20

hasło = ASWQ34GHQW


';;
// Ustaw powrót karetki
$ nl = "\ r \ n";
// Ustaw nagłówek typu treści
$ Headers = 'MIME-wersja: 1.0 '.$ nl;
$ nagłówki .= 'Content-typ: text/html; Charset = ISO-8859-1 '.$ nl;
// Ustaw informacje o dodatkowych nagłówkach
$ nagłówki .= „Do: Mehrab Hossain”.$ nl;
$ nagłówki .= 'From: admin' '.$ nl;
$ nagłówki .= 'Cc: personel@przykład.com '.$ nl;
// Wyślij e -mail za pomocą funkcji wiadomości wiadomości ()
if (poczta ($ do, $ tematy, $ message, $ nagłówki))
Echo „E -mail wysłał pomyślnie.\ r \ n ”;

w przeciwnym razie
Echo „e -mail nie wysłał. \ r \ n ”;

?>

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu z serwera internetowego, jeśli funkcja poczty () działa poprawnie.


Pojawi się następujące dane wyjściowe, jeśli sprawdzisz skrzynkę odbiorczą adresu e -mail, który został ustawiony jako adres e -mail odbiornika.

Przykład 3: Wyślij wiadomość e -mail z załącznikiem

Ten przykład pokazuje, w jaki sposób e -mail można wysłać, załączając plik tekstowy. Utwórz plik tekstowy z następującym skryptem.

Treść pliku tekstowego jest odczytana i kodowana przed załącznikiem, a funkcja MD5 () jest używana w skrypcie do generowania liczby losowej dla zawartości mieszanej. Wszystkie niezbędne informacje są dodawane $ nagłówki I $ wiadomość zmienne przed wysłaniem wiadomości e -mail.

// Ustaw adres e -mail Reciever
$ do = "[email protected] ";
// Ustaw temat e -maila
$ tematy = "załącznik pliku";
// Ustaw powrót karetki
$ nl = "\ r \ n";
// Ustaw losowy skrót, który będzie używany do zawartości mieszanej
$ separator = md5 (time ());
// Przeczytaj zawartość załączonego pliku
$ filename = 'myfile.tekst';
$ content = file_get_contents ($ nazwa pliku);
$ content = chunk_split (base64_encode ($ content));
// Ustaw wiadomość e -mail z informacjami o załączniku
$ message = "-" . separator $ . $ nl;
$ wiadomość .= "Content-type: text/plain; charset =" ISO-8859-1 "" . $ nl;
$ wiadomość .= "Contransfer-coding: 8bit" . $ nl;
$ wiadomość .= "Plik tekstowy jest dołączony do wiadomości e -mail." . $ nl;
$ wiadomość .= "-" . separator $ . $ nl;
$ wiadomość .= "Content-type: Application/Octet-Stream; name =" " . $ nazwa pliku . „” ” . $ nl;
$ wiadomość .= "Contransfer-incoding: Base64" . $ nl;
$ wiadomość .= „Dispozycja treści: przywiązanie” . $ nl;
$ wiadomość .= $ treść . $ nl;
$ wiadomość .= "-" . separator $ . „-”;
// Ustaw nagłówek typu treści
$ Headers = 'MIME-wersja: 1.0 '.$ nl;
$ nagłówki .= "Od: [email protected] ".$ nl;
$ nagłówki .= "Odpowiedź-to: [email protected] ".$ nl;
$ nagłówki .= "Content-typ: Multipart/Mixed; granica =" " . separator $ . „” ” .$ nl;
// Wyślij e -mail za pomocą funkcji wiadomości wiadomości ()
if (poczta ($ do, $ tematy, $ message, $ nagłówki))
Echo „Wysyłka e -mail z załącznikiem pomyślnie.\ r \ n ”;

w przeciwnym razie
Echo „e -mail nie wysłał. \ r \ n ”;

?>

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu z serwera internetowego, jeśli funkcja poczty () działa poprawnie.


Pojawi się następujące dane wyjściowe, jeśli sprawdzisz skrzynkę odbiorczą adresu e -mail, który został ustawiony jako adres e -mail odbiornika.

Wniosek

W PHP istnieje wiele sposobów wysyłania e -maili. Funkcja PHP Mail () nie działa poprawnie na Ubuntu po ustawieniu konfiguracji. Ten samouczek pokazuje niezbędne konfiguracje i sposób wysyłania wiadomości e -mail za pomocą funkcji PHP Mail ().