查看: 1671|回复: 1
打印 上一主题 下一主题

How to Send Email from a PHP Script Using SMTP Authentication (and SSL)

[复制链接]
  • TA的每日心情
    开心
    2016-5-12 14:23
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    楼主
    发表于 2013-9-10 17:58:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    Sending an email from a PHP script is simple, fast and easy; if it works.PHP mail() and SMTP Authentication

    Part of what makes the PHP mail() function is so simple is its lack of flexibility. Most importantly and frustratingly, stock PHP mail() does not usually allow you to use the SMTP server of your choice, and it does not support SMTP authentication — required by many a mail server today — at all.

    PEAR Mail for SMTP Authentication and SSL Connection

    Fortunately, overcoming PHP's built-in shortcomings is not difficult either, complicated or painful. For most email uses, the free PEAR Mail package offers all the power and flexibility needed, and it authenticates with your desired outgoing mail server. For enhanced security, encrypted SSL connections are supported for sending mail using PEAR Mail as well.

    Send Email from a PHP Script Using SMTP Authentication

    To connect to an outgoing SMTP server from a PHP script using SMTP authentication and send an email:

    • Make sure the PEAR Mail package is installed.
      • Typically, in particular with PHP 4 or later, this will have already been done for you. Just give it a try.
        4 Y  G' S; u( L. c
    • Adapt the example below for your needs. Make sure you change the following variables at least:
      • from: the email address from which you want the message to be sent.
      • to: the recipient's email address and name.
      • host: your outgoing SMTP server name.
      • username: the SMTP user name (typically the same as the user name used to retrieve mail).
      • password: the password for SMTP authentication.
        ) b) e2 P5 L' ?6 u/ F

      & Q- j3 ~* v; E. _/ W
    Sending Mail from PHP Using SMTP Authentication - Example<?php require_once "Mail.php";  $from = "Sandra Sender <sender@example.com>"; $to = "Ramona Recipient <recipient@example.com>"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?";  $host = "mail.example.com"; $username = "smtp_username"; $password = "smtp_password";  $headers = array ('From' => $from,   'To' => $to,   'Subject' => $subject); $smtp = Mail::factory('smtp',   array ('host' => $host,     'auth' => true,     'username' => $username,     'password' => $password));  $mail = $smtp->send($to, $headers, $body);  if (PEAR::isError($mail)) {   echo("<p>" . $mail->getMessage() . "</p>");  } else {   echo("<p>Message successfully sent!</p>");  } ?>Sending Mail from PHP Using SMTP Authentication and SSL Encryption - Example<?php require_once "Mail.php";  $from = "Sandra Sender <sender@example.com>"; $to = "Ramona Recipient <recipient@example.com>"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?";  $host = "ssl://mail.example.com"; $port = "465"; $username = "smtp_username"; $password = "smtp_password";  $headers = array ('From' => $from,   'To' => $to,   'Subject' => $subject); $smtp = Mail::factory('smtp',   array ('host' => $host,     'port' => $port,     'auth' => true,     'username' => $username,     'password' => $password));  $mail = $smtp->send($to, $headers, $body);  if (PEAR::isError($mail)) {   echo("<p>" . $mail->getMessage() . "</p>");  } else {   echo("<p>Message successfully sent!</p>");  } ?>
    % H1 _6 e0 L  b
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2016-4-15 10:11
  • 签到天数: 1 天

    [LV.1]初来乍到

    沙发
    发表于 2016-4-6 15:29:04 | 只看该作者
    Thank you for sharing.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    小黑屋|Archiver|手机版|香港易事泊讨论区论坛 - bbs.hkesp.com    

    © 2001-2013 Comsenz Inc.All Rights Reserved.

    Powered by Discuz! X3.2

    快速回复 返回顶部 返回列表