2016-10-08 19 views
3

我有一個包含不同數據標籤的表單。這些選項卡由查詢字符串激活。保存提交表單的內容後,我需要重定向到它以使用查詢數據顯示相應的選項卡。如何做到這一點?如何使用查詢字符串重定向?

目前我使用這個重定向:

return Redirect::back()->withErrors($validation); 

但這返回到第一個標籤,甚至沒有該選項卡上所做的更改。我看到類似於

return Redirect::back()->withErrors($validation)->withQuery('tab'=>'info'); 

但這並不奏效。有什麼建議麼?

回答

1

如果您使用Redirect::to()那麼簡單。

return Redirect::to('route_name?q='.$append_data) 

如果你想使用Redirect::back()然後執行以下這些

# Pass the value while redirecting 
return Redirect::back()->with('query_data', 'some_data'); 

並添加條件刀片文件。

@if(!empty(Session::get('query_data')) && Session::get('query_data') == 'some_data') 
<script> 
$(function() { 
    //Change the tab using javascript or 
    //use location.href to refresh after appending query params to url. 
}); 
</script> 
@endif 
-1

您可以使用:

header("Location: form.php"); 
exit; 

所以用戶填寫表單,當他提出,他將被重定向到表單處理頁面的形式,然後就可以用這個頭功能,將用戶重定向回表單頁面。

但要確保這一任何HTML內容之前去(或在代碼的頂部打開outpu緩衝上ob_start())

+0

的問題是關於Laravel。這遠不是該框架的最佳解決方案。 –

1

您可以使用sessions此:

return redirect()->back()->with('tab', 'info'); 

從會話中獲取信息,使用session()全球幫助其在控制器和視圖的工作原理:

session('tab');