hrhr99
@hrhr99

Как вставить в маршрутизацию laravel якорь?

После заполнения формы, надо вставить anchor (якорь) #spasibo в адресную строку.

<form action="/order/<?= $item->id ?>#spasibo">

Как обработать такую ссылку в роутинге?

Route::post('/order/{item}', 'ItemController@postOrder');


Выдаёт ошибку.
  • Вопрос задан
  • 787 просмотров
Решения вопроса 1
saggid
@saggid
Веб-Программист
Якорь вообще на сервер не передаётся же :) Это чисто для браузера. Если хочется отправить что-то на сервер - пиши так:
<form action="/order/<?= $item->id ?>?spasibo">

На сервере, соответственно, код будет следующий:
Route::get('/order/{item}', function() {

    $spasibo = isset($_GET['spasibo']);  // Вернёт boolean в переменную spasibo

});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Laravel
Какую ошибку выдает? Судя по вашему коду, вы форму сабмитите через GET (поскольку метод в форме явно не указан), а роут слушает POST. Отсюда и ошибка.
Можете попробовать сделать так: /order/<?= $item->id ?>/#spasibo
А вообще, якорь сервером должен игнорироваться, это клиентская информация.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы