Метод POST не поддерживается для этого маршрута. Поддерживаемые методы: GET, HEAD In Laravel - PullRequest
0 голосов
/ 17 июня 2020

Когда я нажимаю кнопку отправки, я получаю следующее сообщение об ошибке: «Метод POST не поддерживается для этого маршрута. Поддерживаемые методы: GET, HEAD.»

Мое мнение:

<form action="" method="post">

@csrf
<h1> Gmail Sender </h1>

        <div class='form-group'>
            <label>Email:</label>
            <div class="form-group col-md-3">
                <input name="email" type="email" placeholder= "Email to .."/>
          </div>
        </div>

        <div class='form-group'>
            <label>Subject:</label>
            <div class="form-group col-md-3">
                <input name="subject" type="subject" placeholder= "Email to .."/>
          </div>
        </div>

          <div class='form-group'>
            <label>Content:</label>
            <div class="form-group col-md-4">
            <textarea  class="form-control" name="txtDescription"
             id="txtDescription" cols="30" rows="3" ></textarea>
          </div>
          </div>

          <button> SEND</button>

        </div>
    </div>
</div>
</div>
 @endsection

Мой контроллер:

<?php
namespace App\Http\Controllers;
use\Illuminate\Support\Facades\Mail;
use Illuminate\Http\Request;
use App\Mail\MyMail;

class MyMailController extends Controller
{
public function sendMail(Request $request){
$this->validate($request,[
'email'=>'required',
'subject'=>'required',
'content'=>'required',
]);

   $myMail= new MyMail(
      $request->input('subject'),
    $request->input('content')
    );

   Mail::to($request->input('email'))->send($myMail);
   return redirect()->back()->with('success', 'Email sent successfully. to:' .$request->input('email'));
}
}

мой маршрут:

Route::view('/sendmail', 'sendmail');
Route::post('/' , 'MyMailController@sendMail');

Я хочу отправить электронное письмо. Но когда я нажимаю кнопку отправки, я получаю следующее сообщение об ошибке «Метод POST не поддерживается для этого маршрута. Поддерживаемые методы: GET, HEAD».

1 Ответ

0 голосов
/ 17 июня 2020

Я использую именованный маршрут для лучшего управления действием формы.

Route::post('/' , 'MyMailController@sendMail')->name('sendMail');

По вашему мнению, не забудьте добавить действие в форму

<form action="{{ route('sendMail') }}" method="post">

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...