cvs: phpdoc-ro /reference/mail/functions mail.xml
| From: | Simion Onea | Date: | Fri, 18 Apr 2008 08:06:40 +0000 |
| Subject: | cvs: phpdoc-ro /reference/mail/functions mail.xml | ||
| Groups: | php.doc.ro | ||
| Request: | Send a blank email to doc-ro+get-404@lists.php.net to get a copy of this message | ||
simionea Fri Apr 18 08:06:40 2008 UTC
Modified files:
/phpdoc-ro/reference/mail/functions mail.xml
Log:
Updated the file.
http://cvs.php.net/viewvc.cgi/phpdoc-ro/reference/mail/functions/mail.xml?r1=1.4&r2=1.5&diff_format=u Index: phpdoc-ro/reference/mail/functions/mail.xml diff -u phpdoc-ro/reference/mail/functions/mail.xml:1.4 phpdoc-ro/reference/mail/functions/mail.xml:1.5 --- phpdoc-ro/reference/mail/functions/mail.xml:1.4 Fri Nov 23 09:10:25 2007 +++ phpdoc-ro/reference/mail/functions/mail.xml Fri Apr 18 08:06:40 2008 @@ -1,142 +1,418 @@ -<?xml version="1.0" encoding="iso-8859-2"?> -<!-- EN-Revision: 1.0 Maintainer: adiju Status: outdated --> -<!-- splitted from ./ro/functions/mail.xml, last change in rev 1.1 --> -<!-- last change to 'mail' in en/ tree in rev 1.2 --> - <refentry xml:id="function.mail" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> - <refnamediv> - <refname>mail</refname> - <refpurpose>trimite mail</refpurpose> - </refnamediv> - <refsect1> - <title>Descriere</title> - <methodsynopsis> - <type>bool</type><methodname>mail</methodname> - <methodparam><type>string</type><parameter>to</parameter></methodparam> - <methodparam><type>string</type><parameter>subject</parameter></methodparam> - <methodparam><type>string</type><parameter>message</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter>additional_headers</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter>additional_parameters - </parameter></methodparam> - </methodsynopsis> - <simpara> - <function>mail</function> trimite automat mesajele specificate în <parameter>message</parameter> cãtre destinatarul specificat în <parameter>to</parameter>. Pot fi specificaþi mai mulþi destinatari, separând adresele prin virgulã în parametrul <parameter>to</parameter>. Pot fi trimise e-mail-uri cu fiºiere ataºate ºi cu tipuri speciale de conþinut utilizând aceastã funcþie. Aceasta se realizeazã prin codificare MIME; Pentru mai multe informaþii vezi <link xlink:href="&url.email.mime.zend;">un articol ZEND</link> sau <link xlink:href="&url.email.mime.pear;">Clasele PEAR - MIME</link>. - </simpara> - <simpara> - Urmãtoarele RFC-uri pot fi, de asemenea, folositoare: - <link xlink:href="&url.rfc;1896">RFC 1896</link>, - <link xlink:href="&url.rfc;2045">RFC 2045</link>, - <link xlink:href="&url.rfc;2046">RFC 2046</link>, - <link xlink:href="&url.rfc;2047">RFC 2047</link>, - <link xlink:href="&url.rfc;2048">RFC 2048</link>, ºi - <link xlink:href="&url.rfc;2049">RFC 2049</link>. - </simpara> +<?xml version="1.0" encoding="utf-8"?> +<!-- $Revision: 1.5 $ --> +<!-- EN-Revision: 1.37 Maintainer: simionea Status: translated --> +<!-- CREDITS: adiju --> +<refentry xml:id="function.mail" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> + <refnamediv> + <refname>mail</refname> + <refpurpose>Trimite mesaje e-mail</refpurpose> + </refnamediv> + + <refsect1 role="description"> + &reftitle.description; + <methodsynopsis> + <type>bool</type><methodname>mail</methodname> + <methodparam><type>string</type><parameter>to</parameter></methodparam> + <methodparam><type>string</type><parameter>subject</parameter></methodparam> + <methodparam><type>string</type><parameter>message</parameter></methodparam> + <methodparam choice="opt"><type>string</type><parameter>additional_headers</parameter></methodparam> + <methodparam choice="opt"><type>string</type><parameter>additional_parameters</parameter></methodparam> + </methodsynopsis> + <para> + Trimite un mesaj e-mail. + </para> + </refsect1> + + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>to</parameter></term> + <listitem> + <para> + Destinatarul sau destinatarii mesajului. + </para> + <para> + Formatul acestui string trebuie sÄ respecte + <link xlink:href="&url.rfc;2822">RFC 2822</link>. Unele exemple: + <simplelist> + <member>user@example.com</member> + <member>user@example.com, anotheruser@example.com</member> + <member>User <user@example.com></member> + <member>User <user@example.com>, Another User <anotheruser@example.com></member> + </simplelist> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>subject</parameter></term> + <listitem> + <para> + Subiectul mesajului spre a fi trimis. + </para> + <caution> + <para> + Acesta nu trebuie sÄ conÅ£inÄ caractere de trecere în linie nouÄ, + deoarece mesajul poate sÄ nu fie trimis corect. + </para> + </caution> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>message</parameter></term> + <listitem> + <para> + Mesajul spre a fi trimis. + </para> + <para> + Fiecare rând trebuie sÄ fie încheiat cu LF (\n). Lungimea rândurilor nu + trebuie sÄ depÄÅeascÄ 70 de caractere. + </para> + <caution> + <para> + (Numai pentru Windows) Când PHP conlucreazÄ direct cu un server SMTP, + dacÄ este întâlnit un punct la începutul unui rând, el este eliminat. + Pentru a depÄÅi aceste situaÅ£ii, dublaÅ£i punctul de la începutul + rândului. + <programlisting role="php"> +<![CDATA[ +<?php +$text = str_replace("\n.", "\n..", $text); +?> +]]> + </programlisting> + </para> + </caution> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>additional_headers</parameter> (opÅ£ional)</term> + <listitem> + <para> + Un string spre a fi inserat la sfârÅitul antetelor mesajului. + </para> + <para> + Acesta este utilizat de obicei pentru a adÄuga antete suplimentare + (From, Cc, Åi Bcc). Antetele suplimentare multiple trebuie separate cu + CRLF (\r\n). + </para> + <note> + <para> + La trimiterea mesajului, acesta <emphasis>trebuie</emphasis> sÄ conÅ£inÄ + antetul <literal>From</literal>. Acesta poate fi stabilit cu ajutorul + parametrului <parameter>additional_headers</parameter>, sau poate fi + stabilitÄ o valoare implicitÄ Ã®n &php.ini;. + </para> + <para> + Ãn caz cÄ nu se respectÄ aceastÄ condiÅ£ie, se va produce un mesaj de + eroare similar cu acesta: <literal>Warning: mail(): "sendmail_from" not + set in php.ini or custom "From:" header missing</literal> + (<literal>Avertizare: mail(): "sendmail_from" nu este stabilit în + php.ini sau antetul "From:" lipseÅte</literal>). + Antetul <literal>From</literal> stabileÅte de asemenea <literal> + Return-Path</literal> în Windows. + </para> + </note> + <note> + <para> + DacÄ mesajele nu sunt primite, încercaÅ£i sÄ utilizaÅ£i numai LF (\n). + Unii agenÅ£i de transfer a mesajelor de calitate proastÄ Ã®n Unix + înlocuiesc LF cu CRLF în mod automat (ceea ce duce la dublarea CR dacÄ + este utilizat CRLF). UtilizaÅ£i acest procedeu numai în caz excepÅ£ional, + deoarece acesta nu se conformaezÄ cu <link xlink:href="&url.rfc;2822"> + RFC 2822</link>. + </para> + </note> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>additional_parameters</parameter> (opÅ£ional)</term> + <listitem> + <para> + Parametrul <parameter>additional_parameters</parameter> poate fi + utilizat pentru a transmite un parametru suplimentar programului + configurat pentru a transmite poÅta utilizând opÅ£iunea de configurare + <literal>sendmail_path</literal>. Spre exemplu, acesta poate fi utilizat + pentru a stabili adresa expeditorului de pe plic când se utilizeazÄ + sendmail cu opÅ£iunea <literal>-f</literal>. + </para> + <para> + Utilizatorul cu care ruleazÄ serveul web trebuie adÄugat în calitate de + utilizator de încredere în configuraÅ£ia sendmail pentru a preveni + adÄugarea unui antet 'X-Warning' la mesaj atunci când expeditorul de pe + plic (-f) este stabilit prin aceastÄ metodÄ. + Pentru utilizatorii sendmail acest fiÅier este + <filename>/etc/mail/trusted-users</filename>. + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + + <refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + Ãntoarce &true; dacÄ mesajul a fost acceptat cu succes pentru trimitere, + &false; în caz contrar. + </para> + <para> + Este important sÄ ÅtiÅ£i cÄ cu toate cÄ mesajul a fost acceptat spre + trimitere, aceasta NU înseamnÄ cÄ mesajul într-adevÄr va ajunge la + destinaÅ£ie. + </para> + </refsect1> + + <refsect1 role="changelog"> + &reftitle.changelog; + <para> + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry>&Version;</entry> + <entry>&Description;</entry> + </row> + </thead> + <tbody> + <row> + <entry>4.3.0 (numai pentru Windows)</entry> + <entry> + Toate antetele personalizate (cum ar fi From, Cc, Bcc Åi Date) sunt + susÅ£inute Åi nu fac diferenÅ£iere între caracterele minuscule / + majuscule. (Deoarece antetele personalizate nu sunt interpretate de + MTA, dar sunt procesate de PHP, PHP < 4.3 susÅ£inea numai elementul + de antet Cc, care fÄcea diferenÅ£iere între caracterele minuscule / + majuscule). + </entry> + </row> + <row> + <entry>4.2.3</entry> + <entry> + Parametrul <parameter>additional_parameters</parameter> este dezactivat + în <link linkend="ini.safe-mode">safe_mode</link> Åi funcÅ£ia + <function>mail</function> va emite un mesaj de avertizare Åi va + întoarce &false; atunci când este utilizat. + </entry> + </row> + <row> + <entry>4.0.5</entry> + <entry> + Parametrul <parameter>additional_parameters</parameter> a fost adÄugat. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </para> + </refsect1> + + <refsect1 role="examples"> + &reftitle.examples; + <para> + <example> + <title>Trimiterea mesajelor.</title> <para> - <function>mail</function> returneazã &true; dacã mailul a fost trimis cu succes, &false; în caz contrar. + Utilizarea <function>mail</function> pentru a transmite un mesaj simplu: </para> - <para> - <example> - <title>Trimiterea unui e-mail.</title> - <programlisting> + <programlisting role="php"> <![CDATA[ -mail("joecool@example.com", "Subiectul", "Linia 1\nLinia 2\nLinia 3"); +<?php +// Mesajul +$message = "Line 1\nLine 2\nLine 3"; + +// Ãn caz cÄ vre-un rând depÄÅeÅte 70 de caractere, trebuie sÄ utilizÄm +// wordwrap() +$message = wordwrap($message, 70); + +// Trimiterea +mail('caffinated@example.com', 'My Subject', $message); +?> ]]> - </programlisting> - </example></para> - <simpara> - Dacã ºi cel de-al patrulea argument este trimis cãtre funcþie, acest ºir este inserat la finalul antetului. Acest parametru se utilizeazã pentru a adãuga antete adiþionale. Antetele multiple se separã cu un început de rînd (<literal>\r</literal>) ºi cu o linie nouã (<literal>\n</literal>). - </simpara> - <note> - <para> - Trebuie utilizatã combinaþia <literal>\r\n</literal> pentru separarea antetelor, cu toate cã unii agenþi de transfer mail din Unix pot lucra cu un singur caracter linie nouã (<literal>\n</literal>). Antetul Cc: este sensibil la distincþia majuscule/minuscule ºi trebuie scris <literal>Cc:</literal> pe sisteme Win32. Antetul Bcc: nu este suportat pe sistemele Win32. - </para> - </note> + </programlisting> + </example> + <example> + <title>Trimiterea unui mesaj cu antete suplimentare.</title> <para> - <example> - <title>Trimiterea de mail-uri cu antete adiþionale.</title> - <programlisting> + AdÄugarea antetelor de bazÄ, transmiţându-i MUA adresele From Åi Reply-To: + </para> + <programlisting role="php"> <![CDATA[ -mail("nobody@example.com", "subiectul", $mesaj, - "From: webmaster@$NUME_SERVER\r\n" - ."Reply-To: webmaster@$NUME_SERVER\r\n" - ."X-Mailer: PHP/" . phpversion()); +<?php +$to = 'nobody@example.com'; +$subject = 'the subject'; +$message = 'hello'; +$headers = 'From: webmaster@example.com' . "\r\n" . + 'Reply-To: webmaster@example.com' . "\r\n" . + 'X-Mailer: PHP/' . phpversion(); + +mail($to, $subject, $message, $headers); +?> ]]> - </programlisting> - </example> - </para> + </programlisting> + </example> + <example> + <title>Trimiterea unui mesaj cu un parametru suplimentar în linia de + comandÄ.</title> <para> - <parameter>additional_parameters</parameter> poate fi utilizat pentru a trimite parametri adiþionali programului folosit pentru trimiterea de e-mail-uri specificat în <literal>sendmail_path</literal>. De exemplu aceºti parametri adiþionali pot fi folosiþi pentru a indica adresa expeditorului. Pentru a preveni trimiterea unui antet 'X-Warning' odatã cu mesajul atunci când utilizaþi aceastã metodã este posibil sã fie necesar sã adãugaþi utilizatorul care ruleazã serverul web. - <example> - <title>Expedierea de mesaje cu antete adiþionale ºi setarea unui parametru linie de comandã adiþional.</title> - <programlisting> + Parametrul <parameter>additional_parameters</parameter> poate fi utilizat + pentru a transmite un parametru suplimentar programului configurat pentru + a fi utilizat la trimiterea poÅtei cu ajutorul + <literal>sendmail_path</literal>. + </para> + <programlisting role="php"> <![CDATA[ -mail("nimeni@exemplu.com", "subiectul", $mesaj, - "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVER_NAME"); +<?php +mail('nobody@example.com', 'the subject', 'the message', null, + '-fwebmaster@example.com'); +?> ]]> - </programlisting> - </example> - </para> - <note> - <para> - Cel de-al cincilea parametru a fost adãugat în PHP 4.0.5. - </para> - </note> + </programlisting> + </example> + <example> + <title>Transmiterea unui mesaj HTML</title> <para> - Se pot utiliza ºiruri simple pentru a constru mesaje de e-mail complexe. - <example> - <title>Expedierea de mesaje complexe.</title> - <programlisting> + Este posibil de a trimite mesaje HTML cu <function>mail</function>. + </para> + <programlisting role="php"> <![CDATA[ -/* destinatari */ -$catre = "Mary <mary@example.com>" . ", " ; //notaþi virgula -$catre .= "Kelly <kelly@example.com>"; +<?php +// Destinatari multipli +$to = 'aidan@example.com' . ', '; // observaÅ£i virgula +$to .= 'wez@example.com'; -/* subiect */ -$subiect = "Zile de naºtere în august"; +// Subiectul +$subject = 'Birthday Reminders for August'; -/* mesaj */ -$mesaj = ' +// Mesajul +$message = ' <html> <head> - <title>Zile de naºtere în august</title> + <title>Birthday Reminders for August</title> </head> <body> -<p>Zile de naºtere care se sãrbãtoresc în august!</p> -<table> - <tr> - <th>Persoana</th><th>Ziua</th><th>Luna</th><th>Anul</th> - </tr> - <tr> - <td>Joe</td><td>3</td><td>august</td><td>1970</td> - <td>Sally</td><td>17</td><td>august</td><td>1973</td> - </tr> -</table> + <p>Here are the birthdays upcoming in August!</p> + <table> + <tr> + <th>Person</th><th>Day</th><th>Month</th><th>Year</th> + </tr> + <tr> + <td>Joe</td><td>3rd</td><td>August</td><td>1970</td> + </tr> + <tr> + <td>Sally</td><td>17th</td><td>August</td><td>1973</td> + </tr> + </table> </body> </html> '; -/* Pentru a trimite un e-mail în format HTML trebuie setat antetul Content-type. */ -$antete = "MIME-Version: 1.0\r\n"; -$antete .= "Content-type: text/html; charset=iso-8859-1\r\n"; - -/* Antete adiþionale */ -$antete .= "From: Monitorizare zile de nastere <birthday@example.com>\r\n"; +// Pentru a trimite mesaje HTML, trebuie stabilit antetul Content-type +$headers = 'MIME-Version: 1.0' . "\r\n"; +$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; -$antete .= "Cc: birthdayarchive@example.com\r\n"; -$antete .= "Bcc: birthdaycheck@example.com\r\n"; +// Antete suplimentare +$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n"; +$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n"; +$headers .= 'Cc: birthdayarchive@example.com' . "\r\n"; +$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n"; -/* ªi acum sã-i dãm drumul... */ -mail($catre, $subiect, $mesaj, $antete); +// Trimiterea mesajului +mail($to, $subject, $message, $headers); +?> ]]> - </programlisting> - </example> + </programlisting> + <para> + <note> + <para> + DacÄ se intenÅ£ioneazÄ trimiterea mesajelor HTML, sau a altor mesaje + complexe, este recomandatÄ utilizarea pachetului PEAR + <link xlink:href="&url.pear.package;Mail_Mime">PEAR::Mail_Mime</link>. + </para> + </note> </para> - <note> - <para> - Aveþi grijã sã nu fie vreun caracter linie nouã (\n) în parametrii <parameter>to</parameter> sau <parameter>subject</parameter>, dacã doriþi ca mesajul sã fie trimis. - </para> - </note> - </refsect1> - </refentry> + </example> + </para> + </refsect1> + + <refsect1 role="notes"> + &reftitle.notes; + <note> + <para> + Implementarea funcÅ£iei <function>mail</function> în Windows diferÄ Ã®n multe + aspecte de cea din Unix. Ãn primul rând ea nu utilizeazÄ un binar local + pentru a compune mesajele, dar opereazÄ direct asupra socket-urilor, ceea + ce înseamnÄ cÄ este necesar ca un <literal>MTA</literal> sÄ asculte pe un + socket de reÅ£ea (care poate fi pe serverul local sau pe unul îndepÄrtat). + </para> + <para> + Ãn al doilea rând, antetele personalizate, cum ar fi + <literal>From:</literal>, + <literal>Cc:</literal>, + <literal>Bcc:</literal> Åi + <literal>Date:</literal> + <emphasis role="strong">nu</emphasis> sunt interpretate de cÄtre + <literal>MTA</literal> în primul rând, dar sunt procesate de PHP. + </para> + <para> + Prin urmare, parametrul <parameter>to</parameter> nu trebuie sÄ fie o + adresÄ de forma "Ceva <cineva@exemplu.com>". Comanda mail + poate sÄ nu prelucreze aceasta în mod corect în timp ce conlucreazÄ cu MTA. + </para> + </note> + + <note> + <para> + Mesajele cu ataÅamente Åi tipuri speciale de conÅ£inut (de ex. HTML) pot fi + trimise utilizând aceastÄ funcÅ£ie. Aceasta poate fi realizat cu ajutorul + codificÄrilor MIME - pentru informaÅ£ii suplimentare, accesaÅ£i acest + <link xlink:href="&url.email.mime.zend;"> + articol Zend</link> sau <link xlink:href="&url.pear.package;Mail_Mime"> + Clasele Mime PEAR</link>. + </para> + </note> + + <note> + <para> + Face de menÅ£ionat cÄ funcÅ£ia <function>mail</function> nu este potrivitÄ + pentru volume mari de masaje trimise consecutiv. AceastÄ funcÅ£ie deschide + Åi închide socket-ul SMTP pentru fiecare mesaj, ceea ce nu este foarte + eficient. + </para> + <para> + Pentru transmiterea volumelor mari de mesaje consideraÅ£i pachetele + <link xlink:href="&url.pear.package;Mail">PEAR::Mail</link> Åi + <link xlink:href="&url.pear.package;Mail_Queue">PEAR::Mail_Queue</link>. + </para> + </note> + + <note> + <para> + UrmÄtoarele RFC-uri pot fi de folos: + <link xlink:href="&url.rfc;1896">RFC 1896</link>, + <link xlink:href="&url.rfc;2045">RFC 2045</link>, + <link xlink:href="&url.rfc;2046">RFC 2046</link>, + <link xlink:href="&url.rfc;2047">RFC 2047</link>, + <link xlink:href="&url.rfc;2048">RFC 2048</link>, + <link xlink:href="&url.rfc;2049">RFC 2049</link> Åi + <link xlink:href="&url.rfc;2822">RFC 2822</link>. + </para> + </note> + </refsect1> + + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><function>imap_mail</function></member> + <member><link xlink:href="&url.pear.package;Mail">PEAR::Mail</link></member> + <member><link xlink:href="&url.pear.package;Mail_Mime">PEAR::Mail_Mime</link></member> + </simplelist> + </para> + </refsect1> +</refentry> + <!-- Keep this comment at the end of the file Local variables:
http://cvs.php.net/viewvc.cgi/phpdoc-ro/reference/mail/functions/mail.xml?r1=1.4&r2=1.5&diff_format=u Index: phpdoc-ro/reference/mail/functions/mail.xml diff -u phpdoc-ro/reference/mail/functions/mail.xml:1.4 phpdoc-ro/reference/mail/functions/mail.xml:1.5 --- phpdoc-ro/reference/mail/functions/mail.xml:1.4 Fri Nov 23 09:10:25 2007 +++ phpdoc-ro/reference/mail/functions/mail.xml Fri Apr 18 08:06:40 2008 @@ -1,142 +1,418 @@ -<?xml version="1.0" encoding="iso-8859-2"?> -<!-- EN-Revision: 1.0 Maintainer: adiju Status: outdated --> -<!-- splitted from ./ro/functions/mail.xml, last change in rev 1.1 --> -<!-- last change to 'mail' in en/ tree in rev 1.2 --> - <refentry xml:id="function.mail" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> - <refnamediv> - <refname>mail</refname> - <refpurpose>trimite mail</refpurpose> - </refnamediv> - <refsect1> - <title>Descriere</title> - <methodsynopsis> - <type>bool</type><methodname>mail</methodname> - <methodparam><type>string</type><parameter>to</parameter></methodparam> - <methodparam><type>string</type><parameter>subject</parameter></methodparam> - <methodparam><type>string</type><parameter>message</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter>additional_headers</parameter></methodparam> - <methodparam choice="opt"><type>string</type><parameter>additional_parameters - </parameter></methodparam> - </methodsynopsis> - <simpara> - <function>mail</function> trimite automat mesajele specificate în <parameter>message</parameter> cãtre destinatarul specificat în <parameter>to</parameter>. Pot fi specificaþi mai mulþi destinatari, separând adresele prin virgulã în parametrul <parameter>to</parameter>. Pot fi trimise e-mail-uri cu fiºiere ataºate ºi cu tipuri speciale de conþinut utilizând aceastã funcþie. Aceasta se realizeazã prin codificare MIME; Pentru mai multe informaþii vezi <link xlink:href="&url.email.mime.zend;">un articol ZEND</link> sau <link xlink:href="&url.email.mime.pear;">Clasele PEAR - MIME</link>. - </simpara> - <simpara> - Urmãtoarele RFC-uri pot fi, de asemenea, folositoare: - <link xlink:href="&url.rfc;1896">RFC 1896</link>, - <link xlink:href="&url.rfc;2045">RFC 2045</link>, - <link xlink:href="&url.rfc;2046">RFC 2046</link>, - <link xlink:href="&url.rfc;2047">RFC 2047</link>, - <link xlink:href="&url.rfc;2048">RFC 2048</link>, ºi - <link xlink:href="&url.rfc;2049">RFC 2049</link>. - </simpara> +<?xml version="1.0" encoding="utf-8"?> +<!-- $Revision: 1.5 $ --> +<!-- EN-Revision: 1.37 Maintainer: simionea Status: translated --> +<!-- CREDITS: adiju --> +<refentry xml:id="function.mail" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> + <refnamediv> + <refname>mail</refname> + <refpurpose>Trimite mesaje e-mail</refpurpose> + </refnamediv> + + <refsect1 role="description"> + &reftitle.description; + <methodsynopsis> + <type>bool</type><methodname>mail</methodname> + <methodparam><type>string</type><parameter>to</parameter></methodparam> + <methodparam><type>string</type><parameter>subject</parameter></methodparam> + <methodparam><type>string</type><parameter>message</parameter></methodparam> + <methodparam choice="opt"><type>string</type><parameter>additional_headers</parameter></methodparam> + <methodparam choice="opt"><type>string</type><parameter>additional_parameters</parameter></methodparam> + </methodsynopsis> + <para> + Trimite un mesaj e-mail. + </para> + </refsect1> + + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>to</parameter></term> + <listitem> + <para> + Destinatarul sau destinatarii mesajului. + </para> + <para> + Formatul acestui string trebuie sÄ respecte + <link xlink:href="&url.rfc;2822">RFC 2822</link>. Unele exemple: + <simplelist> + <member>user@example.com</member> + <member>user@example.com, anotheruser@example.com</member> + <member>User <user@example.com></member> + <member>User <user@example.com>, Another User <anotheruser@example.com></member> + </simplelist> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>subject</parameter></term> + <listitem> + <para> + Subiectul mesajului spre a fi trimis. + </para> + <caution> + <para> + Acesta nu trebuie sÄ conÅ£inÄ caractere de trecere în linie nouÄ, + deoarece mesajul poate sÄ nu fie trimis corect. + </para> + </caution> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>message</parameter></term> + <listitem> + <para> + Mesajul spre a fi trimis. + </para> + <para> + Fiecare rând trebuie sÄ fie încheiat cu LF (\n). Lungimea rândurilor nu + trebuie sÄ depÄÅeascÄ 70 de caractere. + </para> + <caution> + <para> + (Numai pentru Windows) Când PHP conlucreazÄ direct cu un server SMTP, + dacÄ este întâlnit un punct la începutul unui rând, el este eliminat. + Pentru a depÄÅi aceste situaÅ£ii, dublaÅ£i punctul de la începutul + rândului. + <programlisting role="php"> +<![CDATA[ +<?php +$text = str_replace("\n.", "\n..", $text); +?> +]]> + </programlisting> + </para> + </caution> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>additional_headers</parameter> (opÅ£ional)</term> + <listitem> + <para> + Un string spre a fi inserat la sfârÅitul antetelor mesajului. + </para> + <para> + Acesta este utilizat de obicei pentru a adÄuga antete suplimentare + (From, Cc, Åi Bcc). Antetele suplimentare multiple trebuie separate cu + CRLF (\r\n). + </para> + <note> + <para> + La trimiterea mesajului, acesta <emphasis>trebuie</emphasis> sÄ conÅ£inÄ + antetul <literal>From</literal>. Acesta poate fi stabilit cu ajutorul + parametrului <parameter>additional_headers</parameter>, sau poate fi + stabilitÄ o valoare implicitÄ Ã®n &php.ini;. + </para> + <para> + Ãn caz cÄ nu se respectÄ aceastÄ condiÅ£ie, se va produce un mesaj de + eroare similar cu acesta: <literal>Warning: mail(): "sendmail_from" not + set in php.ini or custom "From:" header missing</literal> + (<literal>Avertizare: mail(): "sendmail_from" nu este stabilit în + php.ini sau antetul "From:" lipseÅte</literal>). + Antetul <literal>From</literal> stabileÅte de asemenea <literal> + Return-Path</literal> în Windows. + </para> + </note> + <note> + <para> + DacÄ mesajele nu sunt primite, încercaÅ£i sÄ utilizaÅ£i numai LF (\n). + Unii agenÅ£i de transfer a mesajelor de calitate proastÄ Ã®n Unix + înlocuiesc LF cu CRLF în mod automat (ceea ce duce la dublarea CR dacÄ + este utilizat CRLF). UtilizaÅ£i acest procedeu numai în caz excepÅ£ional, + deoarece acesta nu se conformaezÄ cu <link xlink:href="&url.rfc;2822"> + RFC 2822</link>. + </para> + </note> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>additional_parameters</parameter> (opÅ£ional)</term> + <listitem> + <para> + Parametrul <parameter>additional_parameters</parameter> poate fi + utilizat pentru a transmite un parametru suplimentar programului + configurat pentru a transmite poÅta utilizând opÅ£iunea de configurare + <literal>sendmail_path</literal>. Spre exemplu, acesta poate fi utilizat + pentru a stabili adresa expeditorului de pe plic când se utilizeazÄ + sendmail cu opÅ£iunea <literal>-f</literal>. + </para> + <para> + Utilizatorul cu care ruleazÄ serveul web trebuie adÄugat în calitate de + utilizator de încredere în configuraÅ£ia sendmail pentru a preveni + adÄugarea unui antet 'X-Warning' la mesaj atunci când expeditorul de pe + plic (-f) este stabilit prin aceastÄ metodÄ. + Pentru utilizatorii sendmail acest fiÅier este + <filename>/etc/mail/trusted-users</filename>. + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + + <refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + Ãntoarce &true; dacÄ mesajul a fost acceptat cu succes pentru trimitere, + &false; în caz contrar. + </para> + <para> + Este important sÄ ÅtiÅ£i cÄ cu toate cÄ mesajul a fost acceptat spre + trimitere, aceasta NU înseamnÄ cÄ mesajul într-adevÄr va ajunge la + destinaÅ£ie. + </para> + </refsect1> + + <refsect1 role="changelog"> + &reftitle.changelog; + <para> + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry>&Version;</entry> + <entry>&Description;</entry> + </row> + </thead> + <tbody> + <row> + <entry>4.3.0 (numai pentru Windows)</entry> + <entry> + Toate antetele personalizate (cum ar fi From, Cc, Bcc Åi Date) sunt + susÅ£inute Åi nu fac diferenÅ£iere între caracterele minuscule / + majuscule. (Deoarece antetele personalizate nu sunt interpretate de + MTA, dar sunt procesate de PHP, PHP < 4.3 susÅ£inea numai elementul + de antet Cc, care fÄcea diferenÅ£iere între caracterele minuscule / + majuscule). + </entry> + </row> + <row> + <entry>4.2.3</entry> + <entry> + Parametrul <parameter>additional_parameters</parameter> este dezactivat + în <link linkend="ini.safe-mode">safe_mode</link> Åi funcÅ£ia + <function>mail</function> va emite un mesaj de avertizare Åi va + întoarce &false; atunci când este utilizat. + </entry> + </row> + <row> + <entry>4.0.5</entry> + <entry> + Parametrul <parameter>additional_parameters</parameter> a fost adÄugat. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </para> + </refsect1> + + <refsect1 role="examples"> + &reftitle.examples; + <para> + <example> + <title>Trimiterea mesajelor.</title> <para> - <function>mail</function> returneazã &true; dacã mailul a fost trimis cu succes, &false; în caz contrar. + Utilizarea <function>mail</function> pentru a transmite un mesaj simplu: </para> - <para> - <example> - <title>Trimiterea unui e-mail.</title> - <programlisting> + <programlisting role="php"> <![CDATA[ -mail("joecool@example.com", "Subiectul", "Linia 1\nLinia 2\nLinia 3"); +<?php +// Mesajul +$message = "Line 1\nLine 2\nLine 3"; + +// Ãn caz cÄ vre-un rând depÄÅeÅte 70 de caractere, trebuie sÄ utilizÄm +// wordwrap() +$message = wordwrap($message, 70); + +// Trimiterea +mail('caffinated@example.com', 'My Subject', $message); +?> ]]> - </programlisting> - </example></para> - <simpara> - Dacã ºi cel de-al patrulea argument este trimis cãtre funcþie, acest ºir este inserat la finalul antetului. Acest parametru se utilizeazã pentru a adãuga antete adiþionale. Antetele multiple se separã cu un început de rînd (<literal>\r</literal>) ºi cu o linie nouã (<literal>\n</literal>). - </simpara> - <note> - <para> - Trebuie utilizatã combinaþia <literal>\r\n</literal> pentru separarea antetelor, cu toate cã unii agenþi de transfer mail din Unix pot lucra cu un singur caracter linie nouã (<literal>\n</literal>). Antetul Cc: este sensibil la distincþia majuscule/minuscule ºi trebuie scris <literal>Cc:</literal> pe sisteme Win32. Antetul Bcc: nu este suportat pe sistemele Win32. - </para> - </note> + </programlisting> + </example> + <example> + <title>Trimiterea unui mesaj cu antete suplimentare.</title> <para> - <example> - <title>Trimiterea de mail-uri cu antete adiþionale.</title> - <programlisting> + AdÄugarea antetelor de bazÄ, transmiţându-i MUA adresele From Åi Reply-To: + </para> + <programlisting role="php"> <![CDATA[ -mail("nobody@example.com", "subiectul", $mesaj, - "From: webmaster@$NUME_SERVER\r\n" - ."Reply-To: webmaster@$NUME_SERVER\r\n" - ."X-Mailer: PHP/" . phpversion()); +<?php +$to = 'nobody@example.com'; +$subject = 'the subject'; +$message = 'hello'; +$headers = 'From: webmaster@example.com' . "\r\n" . + 'Reply-To: webmaster@example.com' . "\r\n" . + 'X-Mailer: PHP/' . phpversion(); + +mail($to, $subject, $message, $headers); +?> ]]> - </programlisting> - </example> - </para> + </programlisting> + </example> + <example> + <title>Trimiterea unui mesaj cu un parametru suplimentar în linia de + comandÄ.</title> <para> - <parameter>additional_parameters</parameter> poate fi utilizat pentru a trimite parametri adiþionali programului folosit pentru trimiterea de e-mail-uri specificat în <literal>sendmail_path</literal>. De exemplu aceºti parametri adiþionali pot fi folosiþi pentru a indica adresa expeditorului. Pentru a preveni trimiterea unui antet 'X-Warning' odatã cu mesajul atunci când utilizaþi aceastã metodã este posibil sã fie necesar sã adãugaþi utilizatorul care ruleazã serverul web. - <example> - <title>Expedierea de mesaje cu antete adiþionale ºi setarea unui parametru linie de comandã adiþional.</title> - <programlisting> + Parametrul <parameter>additional_parameters</parameter> poate fi utilizat + pentru a transmite un parametru suplimentar programului configurat pentru + a fi utilizat la trimiterea poÅtei cu ajutorul + <literal>sendmail_path</literal>. + </para> + <programlisting role="php"> <![CDATA[ -mail("nimeni@exemplu.com", "subiectul", $mesaj, - "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVER_NAME"); +<?php +mail('nobody@example.com', 'the subject', 'the message', null, + '-fwebmaster@example.com'); +?> ]]> - </programlisting> - </example> - </para> - <note> - <para> - Cel de-al cincilea parametru a fost adãugat în PHP 4.0.5. - </para> - </note> + </programlisting> + </example> + <example> + <title>Transmiterea unui mesaj HTML</title> <para> - Se pot utiliza ºiruri simple pentru a constru mesaje de e-mail complexe. - <example> - <title>Expedierea de mesaje complexe.</title> - <programlisting> + Este posibil de a trimite mesaje HTML cu <function>mail</function>. + </para> + <programlisting role="php"> <![CDATA[ -/* destinatari */ -$catre = "Mary <mary@example.com>" . ", " ; //notaþi virgula -$catre .= "Kelly <kelly@example.com>"; +<?php +// Destinatari multipli +$to = 'aidan@example.com' . ', '; // observaÅ£i virgula +$to .= 'wez@example.com'; -/* subiect */ -$subiect = "Zile de naºtere în august"; +// Subiectul +$subject = 'Birthday Reminders for August'; -/* mesaj */ -$mesaj = ' +// Mesajul +$message = ' <html> <head> - <title>Zile de naºtere în august</title> + <title>Birthday Reminders for August</title> </head> <body> -<p>Zile de naºtere care se sãrbãtoresc în august!</p> -<table> - <tr> - <th>Persoana</th><th>Ziua</th><th>Luna</th><th>Anul</th> - </tr> - <tr> - <td>Joe</td><td>3</td><td>august</td><td>1970</td> - <td>Sally</td><td>17</td><td>august</td><td>1973</td> - </tr> -</table> + <p>Here are the birthdays upcoming in August!</p> + <table> + <tr> + <th>Person</th><th>Day</th><th>Month</th><th>Year</th> + </tr> + <tr> + <td>Joe</td><td>3rd</td><td>August</td><td>1970</td> + </tr> + <tr> + <td>Sally</td><td>17th</td><td>August</td><td>1973</td> + </tr> + </table> </body> </html> '; -/* Pentru a trimite un e-mail în format HTML trebuie setat antetul Content-type. */ -$antete = "MIME-Version: 1.0\r\n"; -$antete .= "Content-type: text/html; charset=iso-8859-1\r\n"; - -/* Antete adiþionale */ -$antete .= "From: Monitorizare zile de nastere <birthday@example.com>\r\n"; +// Pentru a trimite mesaje HTML, trebuie stabilit antetul Content-type +$headers = 'MIME-Version: 1.0' . "\r\n"; +$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; -$antete .= "Cc: birthdayarchive@example.com\r\n"; -$antete .= "Bcc: birthdaycheck@example.com\r\n"; +// Antete suplimentare +$headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n"; +$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n"; +$headers .= 'Cc: birthdayarchive@example.com' . "\r\n"; +$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n"; -/* ªi acum sã-i dãm drumul... */ -mail($catre, $subiect, $mesaj, $antete); +// Trimiterea mesajului +mail($to, $subject, $message, $headers); +?> ]]> - </programlisting> - </example> + </programlisting> + <para> + <note> + <para> + DacÄ se intenÅ£ioneazÄ trimiterea mesajelor HTML, sau a altor mesaje + complexe, este recomandatÄ utilizarea pachetului PEAR + <link xlink:href="&url.pear.package;Mail_Mime">PEAR::Mail_Mime</link>. + </para> + </note> </para> - <note> - <para> - Aveþi grijã sã nu fie vreun caracter linie nouã (\n) în parametrii <parameter>to</parameter> sau <parameter>subject</parameter>, dacã doriþi ca mesajul sã fie trimis. - </para> - </note> - </refsect1> - </refentry> + </example> + </para> + </refsect1> + + <refsect1 role="notes"> + &reftitle.notes; + <note> + <para> + Implementarea funcÅ£iei <function>mail</function> în Windows diferÄ Ã®n multe + aspecte de cea din Unix. Ãn primul rând ea nu utilizeazÄ un binar local + pentru a compune mesajele, dar opereazÄ direct asupra socket-urilor, ceea + ce înseamnÄ cÄ este necesar ca un <literal>MTA</literal> sÄ asculte pe un + socket de reÅ£ea (care poate fi pe serverul local sau pe unul îndepÄrtat). + </para> + <para> + Ãn al doilea rând, antetele personalizate, cum ar fi + <literal>From:</literal>, + <literal>Cc:</literal>, + <literal>Bcc:</literal> Åi + <literal>Date:</literal> + <emphasis role="strong">nu</emphasis> sunt interpretate de cÄtre + <literal>MTA</literal> în primul rând, dar sunt procesate de PHP. + </para> + <para> + Prin urmare, parametrul <parameter>to</parameter> nu trebuie sÄ fie o + adresÄ de forma "Ceva <cineva@exemplu.com>". Comanda mail + poate sÄ nu prelucreze aceasta în mod corect în timp ce conlucreazÄ cu MTA. + </para> + </note> + + <note> + <para> + Mesajele cu ataÅamente Åi tipuri speciale de conÅ£inut (de ex. HTML) pot fi + trimise utilizând aceastÄ funcÅ£ie. Aceasta poate fi realizat cu ajutorul + codificÄrilor MIME - pentru informaÅ£ii suplimentare, accesaÅ£i acest + <link xlink:href="&url.email.mime.zend;"> + articol Zend</link> sau <link xlink:href="&url.pear.package;Mail_Mime"> + Clasele Mime PEAR</link>. + </para> + </note> + + <note> + <para> + Face de menÅ£ionat cÄ funcÅ£ia <function>mail</function> nu este potrivitÄ + pentru volume mari de masaje trimise consecutiv. AceastÄ funcÅ£ie deschide + Åi închide socket-ul SMTP pentru fiecare mesaj, ceea ce nu este foarte + eficient. + </para> + <para> + Pentru transmiterea volumelor mari de mesaje consideraÅ£i pachetele + <link xlink:href="&url.pear.package;Mail">PEAR::Mail</link> Åi + <link xlink:href="&url.pear.package;Mail_Queue">PEAR::Mail_Queue</link>. + </para> + </note> + + <note> + <para> + UrmÄtoarele RFC-uri pot fi de folos: + <link xlink:href="&url.rfc;1896">RFC 1896</link>, + <link xlink:href="&url.rfc;2045">RFC 2045</link>, + <link xlink:href="&url.rfc;2046">RFC 2046</link>, + <link xlink:href="&url.rfc;2047">RFC 2047</link>, + <link xlink:href="&url.rfc;2048">RFC 2048</link>, + <link xlink:href="&url.rfc;2049">RFC 2049</link> Åi + <link xlink:href="&url.rfc;2822">RFC 2822</link>. + </para> + </note> + </refsect1> + + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><function>imap_mail</function></member> + <member><link xlink:href="&url.pear.package;Mail">PEAR::Mail</link></member> + <member><link xlink:href="&url.pear.package;Mail_Mime">PEAR::Mail_Mime</link></member> + </simplelist> + </para> + </refsect1> +</refentry> + <!-- Keep this comment at the end of the file Local variables: