Php Laravel:如何将值从窗体传递给控制器?
我有一张表格:Php Laravel:如何将值从窗体传递给控制器?,php,laravel,laravel-4,Php,Laravel,Laravel 4,我有一张表格: { Form::open(array('action' => 'RatesController@postUserRate', $client->id)) }} {{ Form::text('rate', '', array('placeholder' => 'Enter new custom client rate...')) }} {{ Form::submit('Submit', array('class' => 'btn btn-pr
{ Form::open(array('action' => 'RatesController@postUserRate', $client->id)) }}
{{ Form::text('rate', '', array('placeholder' => 'Enter new custom client rate...')) }}
{{ Form::submit('Submit', array('class' => 'btn btn-primary')) }}
{{ Form::close() }}
如何通过表单将$client->id值传递给控制器方法
我目前有一个控制器方法,如下所示:
public function postUserRate($id)
{
$currentUser = User::find(Sentry::getUser()->id);
$userRate = DB::table('users_rates')->where('user_id', $currentUser->id)->where('client_id', $id)->pluck('rate');
if(is_null($userRate))
{
...
}else{
....
}
}
错误日志显示“RatesController::postserrate()缺少参数1”
关于如何将这个$client->id传递到我的控制器中以便我可以像上面所说的那样使用它,有什么想法吗?将{{{Form::hidden('id',$client->id)}}
添加到表单中。然后,当它被发布时,您可以使用Input::get('id')
按常规获取它的值
另外,删除postserrate
方法的参数。您只需使用:
Form::open(数组('action')=>array('Controller@method“,$user->id)))
- 变量
作为参数传递给方法$user->id
,最后一个变量也应该接收参数,如下所示:method
method($userId)
来源:Laravel您可以在表单中创建一个值为
$client->id
的隐藏字段,它将与其他字段一起提交这是一种解决方案,但是如果入侵者使用burp等工具截获html表单并更改隐藏值,会发生什么情况?如果你知道这个问题的解决办法,请告诉我。