2015-12-04 142 views
0

嗨例如URL paramater值我有此鏈接:獲得通過post方法laravel PHP

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

在那裏,我有具有POST方法的形式。它是possbile,如果我也能得到在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'); 
    } 

} 

我之所以在我的網址是,我有multipe來源,這將幫助我爲交通在我的網站。在我的表單中,我希望獲得URL中的ssid值,以便我知道流量來自哪些人並將其與數據一起保存。

回答

2

我想你可以定義路由像這樣的形式過程:

Route::post('form/create/{ssid}', '[email protected]'); 

然後,在你的控制器,以這種方式獲得的參數:

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

    //other code... 
} 
+0

不能是我正在使用資源控制器。無論如何,我找到了一個解決方案:)我只是做了一個JavaScript函數,將獲得參數值,並把該值在隱藏的領域:) – Yassi

+0

是的,使用隱藏字段可能是另一種解決方案 – Moppo

0

發現周圍工作它。我只是做了一個JavaScript函數,將獲得加載參數值,並將該值放在窗體內的隱藏字段:)

+1

由@Moppo解決方案是更好一。創建一個javascript函數並將該值放入一個隱藏字段看起來對我來說太多了。 –

+0

@MilanMaharjan確實很簡單,但是mt路由已經配置好了。我有一個表單資源路由。如果改變我的路線,這將使我在工作和編碼,而不僅僅是添加一個隱藏的領域和幾行javascript。 – Yassi