2014-10-03 29 views
0

我正在執行搜索,將搜索表單發送給操作。一切都按預期工作,但提交後的網址不是很友好,幷包含不良信息。它將整個請求查詢數組顯示爲查詢字符串。我有一個名爲'album-search'的fieldset元素。從動作zf2更改網址

這是現在我得到的網址:

http://hostname/music_organizer/public/albums/page/1?album-search[term]=art&csrf=12b6065ab7ea428f02ad36a9cc363752-d96a14c1c7f1f2961112014a1e200e03&search=Search 

這裏是我的URL想:

http://hostname/music_organizer/public/albums/page/1?term=art 

我試圖設置查詢字符串,如行動這樣的:

public function searchAction(){ 
    //code 
    $this->getRequest()->getQuery()->set('term', $term); 
    //code 
    return $viewModel; 
} 

,但沒有運氣, 在此先感謝

回答

0

我還以爲你當前呈現的形式應該是這樣的

<form method="get" action="..."> 
<input name="term"> 
<input type="hidden" name="csrf" value="..."> 
<input type="submit" name="" value="Search"> 
<form> 

刪除提交按鈕:
不要指定提交按鈕創建的同時
刪除CSRF元素
如果您在查詢字符串中不需要csrf元素,請將其從您的查看頁面中刪除。但是這個csrf標籤對於避免跨站請求僞造攻擊非常有用。

--SJ

+0

那現在要解決我的問題,但發生了什麼,當我搜索成爲成爲一個先進的搜索和它neccessary使用fielset並形成對象? – Frank 2014-10-09 22:25:27

+0

@Frank,對不起,我對fieldset不熟悉。我建議把它作爲一個新問題來創建。 – 2014-10-11 10:27:37