从post方法laravel php获取url参数值

时间:2015-12-04 11:27:33

标签: php laravel url

嗨,例如我有这个链接:

http://localhost/fp_site/public/form/create?ssid=4

在那里,我有一个有post方法的表单。是否可以在我的post方法中获取URL中的ssid=4,如此

public function store(Request $request)
{

    var_dump(Input::get("ssid")); exit;
    $rules = array(
        'fname'               => 'required',
        'lname'               => 'required',
        'phonenumber'         => 'required',
        'address'             => 'required',
        'postcode'            => 'required',
        'email'               => 'required',

    );

    $validator = Validator::make(Input::all(), $rules);

    if ($validator->fails())
    {
        return Redirect::to('form/create')->withErrors($validator);
    }
    else
    {
        $form = new Form;
        $form->fname          = Input::get('fname');
        $form->lname          = Input::get('lname');
        $form->phonenumber    = Input::get('phonenumber');
        $form->address        = Input::get('address');
        $form->postcode       = Input::get('postcode');
        $form->email          = Input::get('email');
        $form->save();
        Session::flash('alert-success', 'Form Submitted Successfully.');


        return Redirect::to('form/create');
    }

}

我在网址中有这个原因的原因是我有多种来源可以帮助我获取网站流量。在我的表单中,我希望在URL中获取ssid值,以便我知道流量来自谁,并将其与数据一起保存。

2 个答案:

答案 0 :(得分:2)

我认为您可以像这样定义表单流程的路径:

 Route::post('form/create/{ssid}', 'YourController@store');

然后,在您的控制器中,以这种方式获取参数:

public function store(Request $request, $ssid)
{
     dd( $ssid );

    //other code...
}

答案 1 :(得分:0)

找到了解决方法。我刚刚创建了一个javascript函数,它将在加载时获取参数值,并将该值放在表单内的隐藏字段中:)