Php Laravel 5接触表不工作
我没有任何错误,但我没有收到来自表单的任何电子邮件 这是视图(缩小): 查看web/emails/contact只是电子邮件的格式:Php Laravel 5接触表不工作,php,forms,laravel,sendmail,contact-form,Php,Forms,Laravel,Sendmail,Contact Form,我没有任何错误,但我没有收到来自表单的任何电子邮件 这是视图(缩小): 查看web/emails/contact只是电子邮件的格式: <h3>New message from the web!</h3> <div> {{$texto}} </div> <p>from: {{ $email }}</p> 在config/mail.php中,我有: 'driver' => env('MAIL_DRIVER', '
<h3>New message from the web!</h3>
<div>
{{$texto}}
</div>
<p>from: {{ $email }}</p>
在config/mail.php中,我有:
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'mydomain.com'),
'port' => env('MAIL_PORT', 25),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'webmaster@mydomain.com'),
'name' => env('MAIL_FROM_NAME', 'webmaster'),
],
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
最后在.env中:
MAIL_DRIVER=smtp
MAIL_HOST=mydomain.com
MAIL_PORT=25
MAIL_USERNAME=webmaster@mydomain.com
MAIL_PASSWORD=my_password
MAIL_ENCRYPTION=null
一切似乎都很好,我没有任何错误,但我也没有收到任何电子邮件。有什么想法吗?谢谢。要测试您的电子邮件,您可以利用并将用户名/密码等添加到.env设置中 以下是我通常的阐述方式: 控制器:
use Illuminate\Support\Facades\Input;
public function sendEmail(Request $request)
{
$data = array(
'nombre' => $request->get('nombre'),
'email' => $request->get('email'),
'texto' => $request->get('texto')
);
// php artisan make:mail sendMessage - this needs to be ran in terminal / cmd
Mail::to(config('mail.from.address'))->send(new sendMessage($data));
}
SendMail.php:
private $data;
public function __construct($data)
{
$this->data = $data;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
$data = $this->data;
return $this->view('web.emails.contact', compact('data'))
->subject('Web Contact')
->from(Input::get('email'));
}
web/email/contact.blade(基本示例):
嘿{{config('mail.from.name')}
您有一封来自{{$data['nombre']}的电子邮件-电子邮件地址{{{$data['email']}
{!!$data['texto']!!}
config('mail.from.name)
&config('mail.from.address)
可以在config/mail.php
中进行调整,或者您可以简单地删除它们并添加您自己的姓名/电子邮件地址。实际上不。。。阅读“通过动态属性检索输入”一节这似乎不是问题所在,数据确实很好地提取了输入。当我制作一个dd($data)时,结果是:array:6[▼ “名称”=>“性质”“电子邮件”=>”test@mydomain.com“text”=>“test”]
但我还是按照您指示的方式进行了尝试,结果是一样的,一切都很好,但我没有收到电子邮件。@nature。我已经为您大量编辑了这篇文章,介绍了最好的方法,以及有关使用mailtrap.io测试邮箱的更多信息。我看到@Option我必须创建一个可邮寄的邮箱。我将测试它…@nature,我强烈建议使用mailtrap.io进行测试,这对于本地主机电子邮件测试等非常有用。检查您的spambox,以及por t25是否打开
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'mydomain.com'),
'port' => env('MAIL_PORT', 25),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'webmaster@mydomain.com'),
'name' => env('MAIL_FROM_NAME', 'webmaster'),
],
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
MAIL_DRIVER=smtp
MAIL_HOST=mydomain.com
MAIL_PORT=25
MAIL_USERNAME=webmaster@mydomain.com
MAIL_PASSWORD=my_password
MAIL_ENCRYPTION=null
use Illuminate\Support\Facades\Input;
public function sendEmail(Request $request)
{
$data = array(
'nombre' => $request->get('nombre'),
'email' => $request->get('email'),
'texto' => $request->get('texto')
);
// php artisan make:mail sendMessage - this needs to be ran in terminal / cmd
Mail::to(config('mail.from.address'))->send(new sendMessage($data));
}
SendMail.php:
private $data;
public function __construct($data)
{
$this->data = $data;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
$data = $this->data;
return $this->view('web.emails.contact', compact('data'))
->subject('Web Contact')
->from(Input::get('email'));
}
<p>
Hey there {{ config('mail.from.name') }}
</p>
<p>
You have an email from {{ $data['nombre'] }} - email address {{ $data['email'] }}
</p>
<p>
{!! $data['texto'] !!}
</p>