Codeigniter - konfigurujemy wysyłanie e-maili ze skrzynki gmail
Tym razem mam dla Was opis sposobu konfiguracji framework-u CodeIgniter do wysyłania wiadomości e-mail przy pomocy skrzynki założonej na przykład na gmailu.
Sama konfiguracja, nie jest jakoś szczególnie skomplikowana, a sposób jest uniwersalny i możemy dzięki niemu skonfigurować wysyłanie powiadomień z naszej aplikacji przy pomocy skrzynki gmail, albo dowolnej innej.
W pierwszej kolejności w katalogu config aplikacji musimy utworzyć nowy plik email.php, w którym będziemy przechowywać konfigurację naszej skrzynki e-mail:
Uwaga, aby to zadziałało na localhost należy zalogować się na konto Gmail i w jego ustawieniach zezwolić mniej bezpiecznym aplikacjom na dostęp do konta. Tutaj znajduje się opis, o co chodzi i jak to zrobić:
https://support.google.com/accounts/answer/6010255?hl=pl
Dodatkowo zamieszczam plik konfiguracyjny dla osób posiadających hosting na serwerach nazwa.pl
Wybrany przykład kopiujemy i modyfikujemy podstawiając swoje dane.
Teraz wystarczy już tylko napisać funkcję, która będzie wysyłać dla nas wiadomości:
Do funkcji wysyłamy kolejno parametry: $recipent_email, $subject, oraz $messag. Są to kolejno: adres e-mail odbiorcy, temat wiadomości i treść wiadomości w formacie html.
To wszystko.
Przedstawiony sposób jest szczególnie przydatny do testowania aplikacji znajdującej się na serwerze lokalnym, gdy nie mamy skonfigurowanego serwera pocztowego, ale można go z powodzeniem wykorzystywać także w wielu innych sytuacjach (uwaga na limity).
Sama konfiguracja, nie jest jakoś szczególnie skomplikowana, a sposób jest uniwersalny i możemy dzięki niemu skonfigurować wysyłanie powiadomień z naszej aplikacji przy pomocy skrzynki gmail, albo dowolnej innej.
Konfiguracja CodeIgniter do wysyłania emaili z serwerów gmail
W pierwszej kolejności w katalogu config aplikacji musimy utworzyć nowy plik email.php, w którym będziemy przechowywać konfigurację naszej skrzynki e-mail:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); | |
// Aby to zadzialalo nalezy włączyć Zezwalanie mniej bezpiecznym aplikacjom na dostęp do konta | |
$config = array( | |
'protocol' => 'smtp', | |
'smtp_host' => 'ssl://smtp.googlemail.com', | |
'smtp_port' => '465', | |
'smtp_user' => 'adres-skrzynki@gmail.com', | |
'smtp_pass' => 'haslo-do-skrzynki' | |
); | |
/* End of file email.php */ | |
/* Location: ./application/config/email.php */ |
https://support.google.com/accounts/answer/6010255?hl=pl
Dodatkowo zamieszczam plik konfiguracyjny dla osób posiadających hosting na serwerach nazwa.pl
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); | |
$config = array( | |
'protocol' => 'smtp', | |
'smtp_host' => 'ssl://nazwa-klienta-nazwa.nazwa.pl', | |
'smtp_port' => '465', | |
'smtp_user' => 'nazwa@domena.pl', | |
'smtp_pass' => 'haslo-do-skrzynki', | |
'mailtype' => 'html' | |
); | |
/* End of file email.php */ | |
/* Location: ./application/config/email.php */ |
Wybrany przykład kopiujemy i modyfikujemy podstawiając swoje dane.
Teraz wystarczy już tylko napisać funkcję, która będzie wysyłać dla nas wiadomości:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function send_email($recipent_email, $subject, $message) | |
{ | |
$this->load->library('email'); | |
$this->email->from('no-reply@domena.pl', 'Nadawca'); | |
$this->email->to($recipent_email); | |
$this->email->subject($subject); | |
$this->email->message($message); | |
return ($this->email->send()) ? TRUE : FALSE; | |
// albo | |
if ($this->email->send()) | |
echo "Wiadomość została wysłana!"; | |
else | |
echo "Wystąpił błąd podczas wysyłania wiadomości!"; | |
// wyświetl błędy | |
echo $this->email->print_debugger(); | |
} |
Do funkcji wysyłamy kolejno parametry: $recipent_email, $subject, oraz $messag. Są to kolejno: adres e-mail odbiorcy, temat wiadomości i treść wiadomości w formacie html.
To wszystko.
Przedstawiony sposób jest szczególnie przydatny do testowania aplikacji znajdującej się na serwerze lokalnym, gdy nie mamy skonfigurowanego serwera pocztowego, ale można go z powodzeniem wykorzystywać także w wielu innych sytuacjach (uwaga na limity).
Brak komentarzy:
Prześlij komentarz