dsdsm2016 2015-07-30 18:39
浏览 52
已采纳

PHP使用定义的SMTP邮件服务器发送邮件

I use simple php to process sending form inputs arrays using localhost server. Now I need to switch to defined mail server like Gmail SMTP to handle sending process.

<?php

    $to = "contact@mail.com";
    $from = $_REQUEST['email'];
    $name = $_REQUEST['name'];
    $headers = "From: $from";
    $subject = "[Contact form] You have a message from $name.";

    $fields = array();
    $fields{"name"} = "Name";
    $fields{"email"} = "Email";
    $fields{"phone"} = "Phone";
    $fields{"department"} = "Department";
    $fields{"message"} = "Message";

    $body = "Here is what was sent:

"; foreach($fields as $a => $b){   $body .= sprintf("%20s: %s
",$b,$_REQUEST[$a]); }

    $send = mail($to, $subject, $body, $headers);

?>
  • 写回答

1条回答 默认 最新

  • douyuanliao8815 2015-07-30 18:43
    关注

    With mail(), you can't.

    Use for example: SwiftMailer. Example:

    require_once 'lib/swift_required.php';
    
    // Create the Transport
    $transport = Swift_SmtpTransport::newInstance('smtp.example.org', 25)
    ->setUsername('your username')
    ->setPassword('your password');
    
    You could alternatively use a different transport such as Sendmail or Mail:
    
    $transport = Swift_SendmailTransport::newInstance('/usr/sbin/sendmail -bs');
    
    $transport = Swift_MailTransport::newInstance();
    
    $mailer = Swift_Mailer::newInstance($transport);
    
    $message = Swift_Message::newInstance('Wonderful Subject')
    ->setFrom(array('john@doe.com' => 'John Doe'))
    ->setTo(array('receiver@domain.org', 'other@domain.org' => 'A name'))
    ->setBody('Here is the message itself');
    
    $result = $mailer->send($message);
    

    See this: http://swiftmailer.org/docs/sending.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Pwm双极模式H桥驱动控制电机
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题