Diferite exemple de trimitere a unui e-mail
Metodele de trimitere a unui e-mail folosind serverul SMTP Gmail și un cont Gmail sunt prezentate în această parte a tutorialului.
Exemplul 1: Trimiterea unui e-mail text simplu
Creați un fișier Perl cu următorul script care trimite un simplu e-mail text folosind un server SMTP Gmail. Trebuie să setați adresa de e-mail validă și parola care este setată pentru parola aplicației în variabilele $username și $password. Numele de utilizator și parola false sunt atribuite în script. E-mailul nu va fi trimis dacă parola aplicației nu este configurată corect. Apoi, setați adresele de e-mail valide ale destinatarului și ale expeditorului la variabilele $to și $from pentru a verifica dacă e-mailul este trimis corect. Cealaltă parte a scenariului rămâne neschimbată. Un mesaj text simplu este trimis la adresa de e-mail a destinatarului dacă serverul SMTP este conectat și informațiile utilizatorului sunt autentificate cu succes.
#!/usr/bin/perl
#Importa modulele necesare
folosiți strict ;
utilizați Net::SMTP::SSL ;
#Declare subrutina pentru a trimite e-mail folosind serverul Gmail
sub trimite e-mail
{
#Nume de utilizator și parolă pentru autentificare
$numele meu de utilizator = „nume utilizator@gmail.com” ;
parola mea $ = „parola aplicației” ;
#Inițializați variabilele pentru trimiterea e-mailului
meu $to = „receiver@gmail.com” ;
meu $de la = „Meher Nigar
$subiectul meu = „Este un e-mail de testare” ;
mesajul meu $ = „Bună ziua, trimit e-mail folosind Perl.” ;
#Declarați variabila smtp
$smtpServer-ul meu ;
#Conectați-vă cu serverul smtp Gmail
dacă ( nu $smtpServer = Net::SMTP::SSL- > nou ( „smtp.gmail.com” , Port => 465 , Depanați => 1 ) )
{
cel „Nu se poate conecta la serverul SMTP. \n ' ;
}
#Verificați că numele de utilizator și parola sunt valide
$smtpServer- > auth ( $nume de utilizator , $parolă ) || cel 'Eroare de autentificare. \n ' ;
$smtpServer- > Poștă ( $de la. ' \n ' ) ;
$smtpServer- > la ( $to. ' \n ' ) ;
$smtpServer- > date ( ) ;
$smtpServer- > trimitere de date ( 'De la:' . $de la . ' \n ' ) ;
$smtpServer- > trimitere de date ( 'La: ' . $la . ' \n ' ) ;
$smtpServer- > trimitere de date ( 'Subiect: ' . $subiect . ' \n ' ) ;
$smtpServer- > trimitere de date ( ' \n ' ) ;
}
#Apelați subrutinele
&Trimite email ( ) ;
Ieșire:
Următoarele informații similare apar la începutul ieșirii după executarea scriptului dacă e-mailul a fost trimis cu succes:
Când deschideți adresa de e-mail a destinatarului, veți primi următorul e-mail în căsuța de e-mail:
Exemplul 2: Trimiterea unui e-mail formatat HTML
Creați un fișier Perl cu următorul script care trimite un e-mail în format HTML utilizând un server SMTP Gmail. Trebuie să setați o adresă de e-mail și o parolă valide, ca în exemplul anterior. Apoi, setați adresele de e-mail valide ale destinatarului și expeditorului. Codul HTML este adăugat ca mesaj de e-mail în script. Tipul de conținut al e-mailului este setat la text/html pentru a trimite e-mailul în format HTML. Cealaltă parte a scriptului este aceeași cu exemplul anterior. Un e-mail în format HTML este trimis la adresa de e-mail a destinatarului dacă serverul SMTP este conectat și informațiile utilizatorului sunt autentificate cu succes.
#!/usr/bin/perl#Importa modulele necesare
folosiți strict ;
utilizați Net::SMTP::SSL ;
#Declare subrutina pentru a trimite e-mail folosind serverul Gmail
sub trimite e-mail
{
#Nume de utilizator și parolă pentru autentificare
$numele meu de utilizator = „nume utilizator@gmail.com” ;
parola mea $ = „parola aplicației” ;
#Inițializați variabilele pentru trimiterea e-mailului
meu $to = „receiver@gmail.com” ;
meu $de la = „Meher Nigar
$subiectul meu = „Înregistrare finalizată” ;
mesajul meu $ = „
Bine ați venit pe site-ul nostru
” ;#Declarați variabila smtp
$smtpServer-ul meu ;
#Conectați-vă cu serverul smtp Gmail
dacă ( nu $smtpServer = Net::SMTP::SSL- > nou ( „smtp.gmail.com” , Port => 465 , Depanați => 1 ) )
{
cel „Nu se poate conecta la serverul SMTP. \n ' ;
}
#Verificați că numele de utilizator și parola sunt valide
$smtpServer- > auth ( $nume de utilizator , $parolă ) || cel 'Eroare de autentificare. \n ' ;
$smtpServer- > Poștă ( $de la. ' \n ' ) ;
$smtpServer- > la ( $to. ' \n ' ) ;
$smtpServer- > date ( ) ;
$smtpServer- > trimitere de date ( 'De la:' . $de la . ' \n ' ) ;
$smtpServer- > trimitere de date ( 'La: ' . $la . ' \n ' ) ;
$smtpServer- > trimitere de date ( 'Subiect: ' . $subiect . ' \n ' ) ;
#Setați tipul de conținut al e-mailului la HTML pentru a trimite e-mailuri formatate html
$smtpServer- > trimitere de date ( „Tip de conținut: text/html; charset=utf-8 \n \n ' ) ;
$smtpServer- > trimitere de date ( $mesaj. ' \n ' ) ;
$smtpServer- > sfârşitul datelor ( ) ;
$smtpServer- > părăsi ;
}
#Apelați subrutinele
&Trimite email ( ) ;
Ieșire:
Următoarele informații similare apar la începutul ieșirii după executarea scriptului dacă e-mailul a fost trimis cu succes:
Când deschideți adresa de e-mail a destinatarului, veți primi următorul e-mail în căsuța de e-mail:
Concluzie
Metodele de trimitere a unui e-mail folosind Perl prin serverul SMTP Gmail nu sunt la fel de ușoare ca înainte după dezactivarea „aplicației mai puțin sigure” a contului Gmail. Dar puteți trimite un e-mail setând acum parola aplicației.