Php Laravel邮件-无邮件正文
错误例外 htmlspecialchars()要求参数1为字符串,对象为给定对象(视图:F:\OWL\OWL technical\resources\views\email\contact mail.blade.php) 此错误在我尝试从联系人页面上的表单发送消息后出现 联系方式Php Laravel邮件-无邮件正文,php,json,laravel,email,Php,Json,Laravel,Email,错误例外 htmlspecialchars()要求参数1为字符串,对象为给定对象(视图:F:\OWL\OWL technical\resources\views\email\contact mail.blade.php) 此错误在我尝试从联系人页面上的表单发送消息后出现 联系方式 <!-- ***** Contact Form Start ***** --> <div class="col-lg-8 col-md-6 col-sm-12
<!-- ***** Contact Form Start ***** -->
<div class="col-lg-8 col-md-6 col-sm-12">
<form action="{{ route('contacts') }}/send" method="POST">
@csrf
<div class="contact-form">
<div class="row">
<div class="col-lg-6 col-md-12 col-sm-12">
<input type="text" name="name" id="name" placeholder="Name">
</div>
<div class="col-lg-6 col-md-12 col-sm-12">
<input name="email" id="email" type="email" placeholder="E-Mail">
</div>
<div class="col-lg-12">
<textarea name="message" id="message" placeholder="Your message"></textarea>
</div>
<div class="col-lg-12">
<button type="send">Send message</button>
</div>
</div>
</div>
</form>
</div>
<!-- ***** Contact Form End ***** -->
@csrf
发送消息
但如果我在文件中添加{{json_decode($name)}}
联系邮件
名称:{{$name}}
电子邮件:{{$email}}
消息:{{$message}}
这些名称使用类似/u042/u043的代码进行编码(但这里很清楚,我使用json对名称进行了编码),等等。
但是,当收到一封信时,message字段仍然为空
拉威尔7.0
从本地主机发送电子邮件不起作用。他写道,如果没有电子邮件,他无法发送消息,但我将所有字段都放在了电子邮件中。用docs.laravel创建了一切
App\Http\Controller\MailSetting
将$message
变量更改为另一个变量。Laravel自动使$message
变量可用于所有电子邮件模板
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
</head>
<body>
name: {{ $name}} <br>
email: {{ $email}} <br>
message : {{$message }} <br>
</body>
</html>
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Mail;
use Illuminate\Http\Request;
use App\Mail\MailClass;
class MailSetting extends Controller
{
public function send_form(Request $request)
{
$name = $request->name;
$email = $request->email;
$message = $request->message;
Mail::to('test@mail.ru')->send(new MailClass($name, $email, $message));
}
}
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
class MailClass extends Mailable
{
use Queueable, SerializesModels;
protected $name;
protected $email;
protected $message;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($name, $email, $message)
{
$this->name = $name;
$this->email = $email;
$this->message = $message;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('emails.contact-mail')
->with([
'name' => $this->name,
'email' => $this->email,
'message' => $this->message,
])
->subject('New MESSAGE ');
}
}