Mail::send()

Mail::send() – E-mail elküldése

Synopsis

require_once 'Mail.php';

mixed send ( mixed $recipients , array $headers , string $body )

Description

E-mail elküldése. A send() függvényt a factory() függvény által visszaadott objektum biztosítja.

Parameter

  • mixed $recipients - egy tömb, vagy egy vesszővel elválasztott sztring a címzettekkel

  • array $headers - e-mail fejlécek asszociatív tömbje. A fejléc nevének a tömb kulcsa, a fejléc értékének a tömb értéke felel meg.

  • string $body - az e-mail tartalma.

Return value

boolean - TRUE vagy egy PEAR_Error objektum hiba esetén

Throws

Possible PEAR_Error values
Mailer driver Hibakód Hibaüzenet Ok Megoldás
sendmail/smtp NULL "No from address given." A $headers tömbben legalább egy from elemet meg kell adni. From elem hozzáadása:
<?php
$headers
['From'] = '[email protected]';
?>
sendmail NULL "From address specified with dangerous characters." A $headers tömb From eleme egy vagy több olyan karaktert tartalmaz, amely elképzelhető, hogy nem felel meg az RFC követelményeknek. Ellenőrizzük a megadott From címet, hogy nem tartalmaz-e szóközt, pontosvesszőt (;), és-jelet (&) vagy backtick-et (`).
sendmail NULL "sendmail [elérési út] not executable" A sendmail programhoz megadott elérési út nem megfelelő. A megadott útvonalon nem található a sendmail futtatható fájlja. Ellenőrizzük a Mail::factory() függvény meghívásakor átadott $param['sendmail_path'] elem értékét. Ha másik levélküldő programot használunk (pl. qmail), ellenőrizzük a telepített programot. Alapesetben tartalmaznia kellene egy sendmail wrapper-t.
sendmail NULL "sendmail returned error code kód" A sendmail hibával tért vissza, amelyet le kell kezelnünk. Lásd a levélküldő program dokumentációját.
smtp NULL "unable to instantiate Net_SMTP object" Hiba történt a példány létrehozása során. Telepítsük újra/frissítsük a Net_SMTP csomagot.
smtp NULL "unable to connect to smtp server host:port" Az SMTP szerverhez történő csatlakozás meghiúsult Ellenőrizzük a $param['port'] és a $param['host'] elemeket a Mail::factory() függvény meghívásánál.
smtp NULL "unable to authenticate to smtp server" A hitelesítés meghiúsult Ellenőrizzük a $param['auth'], $param['username'] és $param['password'] elemeket a Mail::factory() függvény meghívásánál. Győződjünk meg róla, hogy a megfelelő hitelesítési módot használjuk az SMTP szerverhez.
smtp NULL "unable to identify smtp server" Nem sikerült megkezdeni a kérés továbbítását az SMTP szerverhez Ellenőrizzük, hogy az SMTP szerver megfelel-e az RFC előírásoknak.
smtp NULL "unable to set sender to feladó" A feladó címének elküldése nem járt sikerrel. Ellenőrizzük a feladó e-mail címének szabványosságát és a szerver csatlakozását.
smtp NULL "unable to add recipient címzett:hibakód " A címzett címének hozzáadása nem járt sikerrel Ellenőrizzük a címzett címének szabványosságát és a szerver csatlakozását.
smtp NULL "unable to send data" Az e-mail tartalmát (szövegét) nem sikerült elküldeni. Ellenőrizzük az e-mail tartalmának szabványosságát és a szerver csatlakozását.

Note

This function can not be called statically.

Example

<?php
include 'Mail.php';

$cimzettek '[email protected]';

$fejlecek['From']    = '[email protected]';
$fejlecek['To']      = '[email protected]';
$fejlecek['Subject'] = 'Teszt &uuml;zenet';

$tartalom 'Teszt &uuml;zenet';

$parameterek['sendmail_path'] = '/usr/lib/sendmail';

// Objektum l&eacute;trehoz&aacute;sa a Mail::factory() met&oacute;dus seg&iacute;ts&eacute;g&eacute;vel
$mail_objektum =& Mail::factory('sendmail'$parameterek);

$mail_objektum->send($cimzettek$fejlecek$tartalom);
?>

Ha Bcc:-ként is kívánunk címzetteket megadni, a cimzettek változónak asszociatív tömbnek kell lennie:

<?php
include('Mail.php');
 
$cimzettek = array('To' => '[email protected]',
                   
'Bcc' => '[email protected]');
 
$fejlecek['From']    = '[email protected]';
$fejlecek['To']      = '[email protected]';
$fejlecek['Subject'] = 'Teszt &uuml;zenet';
 
$tartalom 'Teszt &uuml;zenet';
 
$parameterek['sendmail_path'] = '/usr/lib/sendmail';
 
// Objektum l&eacute;trehoz&aacute;sa a Mail::factory() met&oacute;dus seg&iacute;ts&eacute;g&eacute;vel
$mail_objektum =& Mail::factory('sendmail'$parameterek);
 
$mail_objektum->send($cimzettek$fejlecek$tartalom);
?>