通过CakePHP发送电子邮件 - 配置电子邮件覆盖发件人电子邮件

时间:2015-12-06 04:46:21

标签: cakephp gmail cakephp-2.x cakephp-2.7 cakeemail

我在通过cake php 2.7发送电子邮件时遇到问题。好吧,电子邮件被转发到所需的电子邮件地址,但是获取发件人电子邮件地址存在问题,因为我在发件人电子邮件地址处获取配置电子邮件地址。我在解决这个问题上遇到了问题。如果有人能就此问题提出任何建议,将不胜感激。

代码的某些部分是:

页面控制器

class ViewController: UIViewController,UITableViewDataSource, UITableViewDelegate {
  // your existing code
    func tableView(_ tableView: UITableView,didSelectRowAtIndexPath indexPath: NSIndexPath) {
        // either present the view controller for new page or perform the Segue
    }
}

email.php

public function sendEmail($data) {
    $email = new CakeEmail();
    $email->config('gmail');
    $email->emailFormat('html');
    $email->sender($data['User']['email_address'],$data['User']['name']);
    $email->from(array($data['User']['email_address'] => $data['User']['name']));   
    $email->to('configuration_email');
    $email->replyTo($data['User']['email_address']);
    $email->subject($data['User']['subject']);
    $message = 'Name: '.$data['User']['name'].'<br> How Did You Hear: '. $data['User']['how_did_you_hear'].
            '<br>Message: '.$data['User']['body'];

    if ($email->send($message))
    {
        return true;
    }else {
        return false;
    }
  }

'发件人'字段使用的是配置电子邮件,而不是使用$ data ['User'] ['email']。

提前谢谢!

1 个答案:

答案 0 :(得分:0)

Gmail允许您代表与Gmail地址不同的电子邮件地址发送邮件,前提是您已拥有该电子邮件帐户并且已在Gmail帐户中正确注册。

Gmail: Send mail from a different address or alias

中描述了说明

我是从外部地址发送的Gmail或Google Apps用户。

  • 点击右上角的齿轮。
  • 选择设置

    1. 单击“帐户和导入”选项卡。
    2. 在“发送邮件”下,单击添加其他电子邮件地址
    3. 在电子邮件地址&#39;字段,输入您拥有的姓名和备用电子邮件地址。
    4. 输入SMTP服务器(例如smtp.domain.com),该域上的用户名以及该帐户的密码。您可能还需要调整端口设置或SSL设置(如果需要此信息,请与其他ISP联系)。
    5. 点击添加帐户&gt;&gt;
    6. 打开您的其他帐户,然后点击Gmail发送的邮件中的链接,或在Gmail设置的“帐户和导入”部分输入确认代码。

      • 如果Gmail发送了验证电子邮件但您没有收到,请尝试检查您的垃圾邮件或群发邮件文件夹,查看来自account-verification-noreply@google.com的邮件,看看该邮件是否已收到该邮件。