Php Laravel邮件-无邮件正文

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

错误例外 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">
                    <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 ');
    }
}