Как вытащить детали HTML-формы в контроллере в Laravel 5.4?

Я работаю над созданием формы, в которой я хочу заполнить поля из формы (которую я назвал posting.blade.php)

Контроллер, который я использовал для этого:

public function store(Request $request)
{
    $this->validate($request, [
    'name' => 'required',
    'email' => 'required|email',
    'number' => 'required',
    'city' => 'required',
    'post' => 'required'
    ]);

    Mail::send('emails.posting-message', [
    'msg'=> $request->message
    ], function($mail) use($request) {
        $mail->from($request->email, $request->name);
        $mail->to('helloworld@gmail.com')->subject('Contact Message');
    });
    return redirect()->back()->with('flash_message', 'Thank you for your message');
}

Постановка задачи:

Текущий контроллер не возвращает ничего, как в строке 'msg'=> $request->message в подтверждении нет сообщения. Но если я использую

'msg'=> $request->name (Возвращает имя)

Мне интересно, какие изменения я должен внести в контроллер, чтобы он возвращал каждое поле, присутствующее в проверке.

Я пытался с этим, но он только возвращает последнее значение, которое является пост.

   'msg'=> $request->name,
   'msg'=> $request->email,
   'msg'=> $request->number,
   'msg'=> $request->city,
   'msg'=> $request->post

1 ответ

Разве вы не хотите просто добавить их всех к сообщению?

'msg'=> $request->name . "\r\n"
        . $request->email . "\r\n"
        . $request->number . "\r\n"
        . $request->city . "\r\n"
        . $request->post . "\r\n"

("\ r \ n" - возврат каретки + перевод строки для писем.)

Другие вопросы по тегам