我有问题,但 2 天都找不到解决方案 Laravel 电子邮件
I have problem but can’t find a solution for 2 days Laravel Email
我不明白为什么会抛出这样的错误。我从控制器而不是对象调用变量。
错误:
Facade\Ignition\Exceptions\ViewException
htmlspecialchars() expects parameter 1 to be string, object given (View: C:\OSPanel\domains\best.salon\resources\views\landing\mails-temlate.blade.php)
MAIL控制器:
<?php
namespace App\Http\Controllers;
use Mail;
use Illuminate\Http\Request;
class MailController extends Controller
{
public function store(Request $request){
$client_name = $request->get('name');
$email = $request->get('email');
$message = $request->get('text');
\Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','message'),
function ($message) use ($request){
$message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
$message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
});
return view('landing.index', compact('client_name','email','message'));
}
}
邮件模板
CLIENT INFO:
Name: {{ $client_name }}
Email: {{ $email }}
-----------------------------------------
Message: {{ $message }}
可能你应该像这样重命名你使用的 $message
变量的名称:
public function store(Request $request){
$client_name = $request->get('name');
$email = $request->get('email');
$text = $request->get('text');
\Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','text'),
function ($message) use ($request){
$message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
$message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
});
return view('landing.index', compact('client_name','email','text'));
}
并且在您看来使用 $text
变量而不是 $message
。我相信这里存在冲突,因为您使用 $message 作为要显示的文本,但是 $message
变量也在闭包内部使用,然后它是对象而不是字符串。
我不明白为什么会抛出这样的错误。我从控制器而不是对象调用变量。
错误:
Facade\Ignition\Exceptions\ViewException htmlspecialchars() expects parameter 1 to be string, object given (View: C:\OSPanel\domains\best.salon\resources\views\landing\mails-temlate.blade.php)
MAIL控制器:
<?php
namespace App\Http\Controllers;
use Mail;
use Illuminate\Http\Request;
class MailController extends Controller
{
public function store(Request $request){
$client_name = $request->get('name');
$email = $request->get('email');
$message = $request->get('text');
\Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','message'),
function ($message) use ($request){
$message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
$message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
});
return view('landing.index', compact('client_name','email','message'));
}
}
邮件模板
CLIENT INFO:
Name: {{ $client_name }}
Email: {{ $email }}
-----------------------------------------
Message: {{ $message }}
可能你应该像这样重命名你使用的 $message
变量的名称:
public function store(Request $request){
$client_name = $request->get('name');
$email = $request->get('email');
$text = $request->get('text');
\Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','text'),
function ($message) use ($request){
$message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
$message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
});
return view('landing.index', compact('client_name','email','text'));
}
并且在您看来使用 $text
变量而不是 $message
。我相信这里存在冲突,因为您使用 $message 作为要显示的文本,但是 $message
变量也在闭包内部使用,然后它是对象而不是字符串。