Dříve jsme se rozhodli deaktivovat funkci pošty, protože funkci mail() často používali uživatelé se zlými úmysly v naší síti k rozesílání spamu a jiných nevyžádaných e-mailů. Našim zákazníkům doporučujeme, aby k odesílání e-mailů používali e-mailovou knihovnu a existuje mnoho možností, ze kterých si mohou vybrat.
CodeIgniter Framework.
Pokud používáte framework CodeIgniter, můžete k odesílání e-mailů použít vestavěnou třídu Email. Zde je ukázkový kód využívající třídu Email CodeIgniter:
$this->load->library('email');
$this->email->from('[e-mail chráněný]', 'eUKhost Limited (bez odpovědi)');
$this ->e-mail->to($email); // $email =“email_id”
$this->email->subject('Vítejte v eUKhost Limited.');
$this->email->message('Zde pošlete zprávu
');
$this->email->send();
Třídu Email můžete také automaticky načíst v souboru config/autoload.php, což znamená, že nemusíte použít první řádek kódu k vytvoření instance třídy Email, než ji použijete.
Další informace o třídě Email v CodeIgniter, viz dokumentace.
Knihovna PEAR.
Knihovna PEAR má také vestavěnou třídu Mail pro odesílání e-mailů, včetně e-mailů přes ověřování SMTP s již existujícím e-mailovým účtem. Zde je příklad:
include(‘Mail.php’); // obsahuje třídu PEAR Mail
$headers =array (‘Od‘ => $od, ‚Komu‘ => $do, ‚Předmět‘ => $předmět); // hlavičky e-mailu
$smtp =Mail::factory('smtp', pole ('host' => “localhost”, 'auth' => true, 'username' => $username, 'password' => $password, 'port' => '587')); // SMTP protokol s uživatelským jménem a heslem existujícího e-mailového účtu ve vašem hostingovém účtu
$mail =$smtp->send($to, $headers, $body); // odeslání e-mailu
Další informace najdete na stránce třídy Mail na webu PEAR.
Poznámka:Výše uvedený kód nezachycuje žádné chyby, takže vám doporučujeme zkontrolovat dokumentaci, kde najdete podrobnější příklady.
Chcete-li najít port SMTP, přejděte na „Konfigurovat e-mailového klienta“ v nabídce „Více“ v části „E-mailové účty“ cPanelu. Může to být port 587, ale pro jistotu to zkontrolujte.
Knihovna SwiftMailer.
Knihovna SwiftMailer je další oblíbenou volbou pro odesílání e-mailů. Zde je příklad:
$transport =Swift_SmtpTransport::newInstance(‘mail.example.com’, 587); // adresa a port vašeho poštovního serveru. Pokud nevíte, jaký je váš, přejděte na cPanel -> Nastavení e-mailu a pro konkrétní e-mailový účet Více -> Konfigurovat e-mailového klienta – zobrazí se tam.
$mailer =Swift_Mailer::newInstance($transport); // specificky vytvoří novou instanci přenosu SMTP
$transport->setUsername(‘[e-mail chráněný]’);
$transport->setPassword(‘vaše_heslo_zde‘);$message =Swift_Message::newInstance();
$message->setSubject('Nastavte předmět e-mailu');
$message->setFrom(array('[e-mail chráněný]' => 'Vaše jméno/název společnosti'));
$message->setTo(array($email));$message->addPart(‘
Pokud chcete HTML ve svém e-mailu, použijte addPart()
‘, ‚text/html‘);$result =$mailer->send($message); // při selhání vrátí hodnotu FALSE boolean
if(!$result)
{
echo 'failure';
}
else
{
echo 'úspěch';
}
Někteří z našich zaměstnanců mají zkušenosti s PHP, takže pokud potřebujete pomoc s kódem PHP pro odesílání e-mailů pomocí kterékoli z těchto knihoven nebo jiné knihovny, kterou byste mohli chtít použít, můžete svůj dotaz zveřejnit na Web Hosting Forum, kde vám zaměstnanec nebo zákazník na fóru rád pomůže.