2017-02-17 7 views
-1

В настоящее время я перехожу в id в URL-адрес blog.dev/image?=1. Внутри этой страницы мне нужно передать 1 в функцию контроллера.Передача параметра URL в контроллер - laravel

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

Маршруты

Route::get('/image', '[email protected]'); 
Route::post('/image', '[email protected]'); 

public function index(Request $request) { 
    $imgID = $request->query('id'); 
    return view('imgupload.create', compact('imgID')); 
} 

public function store(Request $request){ 
    $imgID = $request->query('id'); 
} 

The $imgID возвращается null всякий раз, когда я запускаю функцию магазина. Что я делаю не так?

+0

https://laravel.com/docs/5.4/routing#route-parameters + https://laravel.com/docs/5.4/controllers#basic-controllers – Laran

+0

'$ query_string_array = $ request-> input() ; ' –

ответ

0

Это просто с вашими параметрами URL, которые у вас уже есть (но вроде бы плохо отформатированы).

Ваш текущий URL является

blog.dev/image?=1 

должен быть

blog.dev/image?id=1 

и позже в вашем контроллере вы можете получить это значение

$imgID = $request->id; 

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

if ($request->has('id')) { 
    $imgID = $request->id; 
    // 
} 

Те же правила применяются к сообщениям post/get из формы/ajax.

Смежные вопросы