Prima pagină > Mini-Curs PHP > Curs PHP Partea a V a:E-mail cu PHP

Curs PHP Partea a V a:E-mail cu PHP


E-mail cu PHP

Introducere

Este extrem de simplu de trimis un mesaj e-mail din PHP, spre deosebire de situaţia din alte limbaje de comandă care necesită o iniţializare aparte, tip CGI. De fapt, în PHP avem doar o singură comandă mail() pentru a trimite un mesaj. Utilizată în formatul următor:

Cod:
mail($destinatar,$subiect,$corpul_mesajului,$antet);

In acest exemplu variabilele indică prin numele lor sintaxa comenzii. De fapt se pot include chiar textele în comandă. Să le luăm pe rând: Mai întâi variabila $destinatar. Aceasta conţine adresa e-mail la care să fie transmis mesajul. Variabila $subiect trebuie să conţină textul care dorim să apară în linia Subject: a mesajului. Iar variabila $corpul_mesajului conţine textul mesajului – conţinutul său.

Prin variablia $antet se transmit componentele suplimentare din antetul mesajului. Cel mai des e vorba despre câmpul From: , dar poate fi inclusă oricare linie din antet, precum Cc:, sau Bcc: .

Trimiterea unui mesaj E-mail

Mai înainte de a expedia un mesaj, dacă folosim variabile atunci va trebui ca, mai întâi să iniţializăm aceste variabile. Iată un exemplu:

Cod:
$destinatar = „jalobean@relis.uvvg.ro”;
$subiect = „despre PHP”;
$corpul_mesajului = „PHP este unul dintre cele mai bune limbaje de comenzi pentru alcătuirea scripturilor”;
$antet = „From: webmaster@uvvg.ro\n”;
mail($destinatar,$subiect,$corpul_mesajului,$antet);
echo „Mesaj trimis la $destinatar”;

Acest cod va face două lucruri. Va trimite un mesaj la adresa

jalobean@relis.uvvg.ro

, cu subject: ‘despre PHP’ şi cu textul:

PHP este unul dintre cele mai bune limbaje de comenzi pentru alcătuirea scripturilor

iar mesajul e-mail va apare ca venind de la

webmaster@uvvg.ro

. Dar va mai fi transmis şi textul:

Mesaj trimis la

jalobean@relis.uvvg.ro

către navigator.

Formatul – aspectul mesajului e-mail

In exemplul de mai sus, în variabila $antet, linia From: este încheiată cu \n. Acesta reprezintă un simbol foarte important la trimiterea unui e-mail. Este codul pentru „linie nouă”. Cum în antetul mesajului (şi deci şi în variabila $antet) putem avea mai multe linii, fiecare trebuie să se încheie cu combinaţia \n . Acesta este standardul international pentru formatul mesajelor e-mail.

Combinaţia aceasta de trecere la linie nouă ( \n ) poate fi folosită şi în corpul mesajului, în variabila $corpul_mesajului . Dar nu are voie să apară nici în adresa de destinaţie (în variabila $destinatar ), nici în subiectul mesajului (variabila $subiect ).

Comanda Mail fără variabile

In sintaxa comenzii mail() nu contează numele variabilelor ci doar poziţia – ordinea lor. Adică, în exemplul de mai sus putem folosi alte patru variabile numite $v1 , $v2 , $v3 şi $v4 . Totul se poate scrie şi într-o singură linie, introducând direct textul, în forma:

Cod:
mail(„jalobean@relis.uvvg.ro”,”despre PHP”,”PHP este unul din cele mai bune limbaje”,”From: webmaster@uvvg.ro\n”);

Dar asta devine ceva mai dificil de citit.

Erori

Aşa cum orice programator ştie foarte bine, este foarte uşor să faci greşeli într-un script, după cum e foarte simplu să intervină greşeli în scrierea adreselor e-mail (în mod special dacă folosim scriptul pentru a construi mesajele). Din cauza asta, este util să adăugăm scriptului o secvenţă de verificare, de forma:

Cod:
if(mail($to,$subject,$body,$headers)) {
echo „Mesajul e-mail a fost trimis la $to cu subiectul: $subject”;
} else {
echo „A intervenit o eroare la trimiterea mesajului. Verificaţi scriptul şi asiguraţi-vă că adresa e-mail $to este corectă”;
}

Acest script pare suficient de limpede. Dacă mesajul este expediat fără probleme, acest fapt va fi comunicat – va apare în fereastra navigatorului. Similar, în cazul unei erori, vom recepţiona atenţionarea cuvenită, cu sugestii de remediere.

Categorii:Mini-Curs PHP
  1. Niciun comentariu până acum.
  1. No trackbacks yet.

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s

%d blogeri au apreciat asta: