Как можно сделать чтобы работала форма GET в форме POST?
Всем привет, подскажите пожалуйста может есть какой способ чтобы форма работала корректно? мне необходимо отправить get запрос из формы post. Из за того что форма в форме formaction не корректно работает. Проект на Laravel
Вообщем вот код
<form method="POST">
@csrf
<div class="profile-advert__button-control">
<input class="js-selected-checkboxes" type="checkbox" value="push"/>
<button type="submit" formaction="{{ route('profile.publish_selected') }}">Опубликовать выбранные</button>
</div>
@if (session('error'))
<div class="alert alert-danger">
{{ session('error') }}
</div>
@endif
@foreach ($adverts as $advert)
<div class="profile-advert__item">
<div class="row">
<div class="col-1">
<ul>
<li>
<span>№ {{ $advert->id }}</span>
</li>
<li>
<input type="checkbox" data-selected="check" name="{{ $loop->index }}" value="{{ $advert->id }}"/>
</li>
</ul>
</div>
<div class="col-2">
<ul class="profile-advert-container__number">
<li>
<button type="submit" formaction="{{ route('profile.publish', $advert) }}">Опубликовать</button>
</li>
<li>
<form action="{{ route('advert.edit', $advert) }}" method="GET">
<button type="submit" formaction="">Редактировать</button>
</form>
</li>
<li>
<button type="submit" formaction="{{ route('profile.close', $advert) }}">Завершить</button>
</li>
</ul>
</div>
</div>
</div>
@endforeach
</form>
Ответы (1 шт):
Нельзя отправить GET запрос в POST, но вы можете передать в URL адресе аргмуенты GET запроса, это будет работать. Я не совсем понял зачем вам это, если я правильно понимаю, вы хотите внутри формы создать кнопку, например, редактирования и отправлять такую форму на специальную страницу для редактирования передав параметром ID аргмуента.
Вам нет необходимости создавать целую форму для этого, достаточно создать ссылку на адрес и передать параметры в URL.
<a href="{{ route('advert.edit', $advert) }}"></a>
<!-- Не уверен что это сработает. Сработает когда получится что-то вроде: -->
<a href="/advert/edit?id=15"></a>
<!-- Ну или так, но это уже будет не GET параметр, как вы его получите зависит от Вашего фреймворка -->
<a href="/advert/edit/15"></a>