gpt4 book ai didi

laravel - 在 Laravel 4 中使用 SwiftMailer 发送邮件

转载 作者:行者123 更新时间:2023-12-02 06:36:13 24 4
gpt4 key购买 nike

我收到以下错误:

Cannot send message without a recipient

这是在尝试使用 swiftmailer 发送电子邮件时。我的代码在本地主机上运行,​​并且具有从发送方到接收方所需的所有参数,但它抛出一个错误,指出没有接收方就无法发送。

这是我的代码:

public function email()
{


Mail::send('emails.auth.mail', array('token'=>'SAMPLE'), function($message){
$message = Swift_Message::newInstance();
$email = $_POST['email']; $name = $_POST['name']; $subject = $_POST['subject']; $msg = $_POST['msg'];

$message = Swift_Message::newInstance()
->setFrom(array($email => $name))
->setTo(array('name@gmail.com' => 'Name'))
->setSubject($subject)
->setBody($msg);




$transport = Swift_MailTransport::newInstance('smtp.gmail.com', 465, 'ssl');
//$transport->setLocalDomain('[127.0.0.1]');

$mailer = Swift_Mailer::newInstance($transport);
//Send the message
$result = $mailer->send($message);
if($result){

var_dump('worked');
}else{
var_dump('Did not send mail');
}
}

最佳答案

您无需在 Mail::send() 实现中添加 SMTP 信息即可执行此操作。

假设您还没有,请前往 app/config/mail.php并根据您的需要编辑以下内容:

'host' => 'smtp.gmail.com',
'port' => 465,
'encryption' => 'ssl',
'username' => 'your_username',
'password' => 'your_password',

那么您的代码应该像这样简单:

public function email()
{
Mail::send('emails.auth.mail', array('token'=>'SAMPLE'), function($message)
{
$message->from( Input::get('email'), Input::get('name') );

$message->to('name@gmail.com', 'Name')->subject( Input::get('subject') );
});
}

因此,希望问题是配置问题之一。您是否有其他环境设置可能会覆盖服务器中无法正常工作的 app/config/mail.php 配置设置?

关于laravel - 在 Laravel 4 中使用 SwiftMailer 发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18216024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com