Laravel 7 кнопка отправки не запускает маршрут - PullRequest
0 голосов
/ 27 мая 2020

У меня есть контактная форма для отправки электронных писем. Когда я пытаюсь отправить свою контактную форму, ничего не происходит. В dev-tools ошибок нет. И вторая проблема - когда я пытаюсь ввести маршрут в адресной строке, например myadress.lv/sendmail, у меня появляется ошибка - «Метод GET не поддерживается для этого маршрута. Поддерживаемые методы: POST.»

Вот мой клинок

<form action="{{url('/sendmail')}}" method="post" id="contact">
    @csrf
    <div class="row">
        <div class="col-lg-6 col-md-12 col-sm-12">
            <fieldset>
                <input name="name" type="text" class="form-control" id="name" placeholder="Jūsu vārds..." required="">
            </fieldset>
        </div>
        <div class="col-lg-6 col-md-12 col-sm-12">
            <fieldset>
                <input name="email" type="text" class="form-control" id="email" pattern="[^ @]*@[^ @]*"
                       placeholder="Jūsu e-pasts..." required="">
            </fieldset>
        </div>
        <div class="col-lg-12 col-md-12 col-sm-12">
            <fieldset>
                <input name="subject" type="text" class="form-control" id="subject" placeholder="Temats..." required="">
            </fieldset>
        </div>
        <div class="col-lg-12">
            <fieldset>
                <textarea name="message" rows="6" class="form-control" id="message" placeholder="Jūsu ziņa..."
                          required=""></textarea>
            </fieldset>
        </div>
        <div class="col-lg-12">
            <fieldset>
                <button type="submit" id="form-submit" class="filled-button">Sūtīt ziņu</button>
            </fieldset>
        </div>
    </div>
</form>

А вот мой список маршрутов

Route::get('/', 'PagesController@index');
Route::get('/kontakti', 'PagesController@contacts');
Route::post('/sendmail', 'MailController@sendMail')->name('send');

В других более старых Laravel версиях это работает нормально, но в Laravel 7 не работает.

Ответы [ 2 ]

0 голосов
/ 27 мая 2020

Проблема решена! Я отключил блейд контактов от макета приложения, а затем кнопка отправки начала запускать маршрут, поэтому я обнаружил, что некоторые из моих сценариев шаблона html блокируют эту операцию. После того, как я удалил

 <script src="scripts/vendors/jquery-3.4.1.min.js"></script>

, все отлично работает.

0 голосов
/ 27 мая 2020

Вторая проблема заключается в том, что когда вы вводите URL-адрес в браузере, вы выполняете GET-запрос. К вашему маршруту '/sendmail' можно получить доступ только с помощью запроса POST.

Для первой проблемы ваш код должен работать, поэтому я предполагаю, что проблема возникла откуда-то еще. Вы можете выполнить отладку с помощью инструментов разработчика, проверив форму и убедившись, что это правильный URL-адрес.

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