Как проверить, отправлена ​​ли форма в laravel?

Я пытаюсь проверить, нажата ли кнопка отправки формы, поэтому я попробовал:

if ($request->input('submit')){
    //do something
    }

и попробовал:

$clicked=$request->input('submit');
if (isset($clicked)){
    //do something
    }

а также пробовал:

if ($request->input('submit')!=null){
    //do something
    }

но когда я нажимаю кнопку отправки в форме, выполнение if-inside никогда не происходит, так каков правильный способ проверить, нажата ли кнопка отправки в laravel?

вы отправляете форму с помощью GET или POST?

Adnan Mumtaz 10.08.2018 13:49

Я отправляю форму с помощью POST

mark 10.08.2018 13:52

вы отправляете на почту маршрут уже определили?

Adnan Mumtaz 10.08.2018 13:53

вот маршрут: Route :: any ('/ messaging / {group_id}', 'messagesController @ mainMessaging')

mark 10.08.2018 13:54

@AdnanMumtaz Я отправляю сообщение по указанному мной маршруту

mark 10.08.2018 13:56
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
4
5
4 708
6

Ответы 6

Вы можете использовать метод запроса get()

if ($request->get('submit')){
//do something
}

Убедитесь, что вы дали название кнопке submit

Я думаю, это всегда будет верным

Adnan Mumtaz 10.08.2018 13:48

когда я использую его, как вы сказали, я получаю ошибку: невозможно использовать isset () в результате выражения

mark 10.08.2018 13:51

проверен, но не работает, и я попытался заменить получить сообщение, но тоже не работает

mark 10.08.2018 14:18

Если вы отправляете метод POST, вы можете проверить, отправлено ли оно через POST.

if ($request->method() == 'POST'){
//ur code here
}

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

mark 10.08.2018 14:33

это можно решить двумя способами: первый способ, если ваша форма содержит только одну кнопку, а ваша форма использует POST, тогда, как сказал Аднан Мумтаз, мы можем использовать:

if ($request->method() == 'POST'){
//ur code here
}

но если форма содержит несколько кнопок, и мы хотим проверить, нажата ли кнопка по сравнению с именем btn1, мы можем использовать:

if ($request->has('btn1')){
//rest of the  code here
}

вот что я использую:

if ($request->has('submit')){
    //do something
}

Например, если ваша кнопка отправки html выглядит так, как показано ниже

<input type = "submit" name = "submit_btn" value = "add">

if ($request->submit_btn == 'submit')
{
     //code
}

Здесь сравнивается, что если значение submit_btn отправлено, это означает, что отправлено ckicked. Надеюсь, это поможет.

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

HTML:

<button type = "submit" name = "find" value = "Find">Find</button>

ЛАРАВЕЛ:

if (isset($request->find)) 
{
    //code
}

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