2013-11-15 60 views
0

我基本上在我的網站的索引上有一個搜索框,當用戶試圖搜索任何內容時 函數q從控制器(search.php)調用,表單使用的方法是所以基本上我最終與這個以下URL youdomain.com/search/qi想要得到像這樣的東西youdomain.com/search/your-search-query.html我知道這是可能的使用路線我試圖search'ing很多,但沒有得到像這樣的東西。CodeIgniter更改POST方法URL

我不想改變我的表單方法,就好像我改變它得到我需要也改變config.php URI來查詢哪種是醜陋的。

那麼有沒有解決辦法呢?

+0

http://ellislab.com/codeigniter%20/user-guide/general/routing.html –

+0

我已經搜索了所有,但我怎麼得到它與POST方法的工作:/你可以再次讀我的問題,我清楚提到班級如何被召喚。 –

+0

'$ this-> input-> get('uri-query-variable'的名稱)' – tomexsans

回答

0

問題:如果用戶直接輸入地址youdomain.com/search/your-search-query.html,您會發生什麼?如果你在這種情況下也需要搜索結果(這是一件正確的事情),你將不得不實施GET搜索。

我不應該告訴你這一點,因爲在我看來這是一件壞事,但你可以用javascript捕捉提交事件,更改請求的URL併發送它。

+0

我同意得到是一個糟糕的方式去,但我不認爲我有任何選擇的權利? –

+0

我試着去但後來當我嘗試從表單提交我得到youdomain.com/search/q=query 我怎麼只得到yourdomain.com/search/query-text.html?我是否將輸入名稱留爲空白? –

+0

不,你錯過了,我的意思是GET是去這裏的好方法。嘗試在你的'config/config.php'中設置'$ config ['uri_protocol']'爲'AUTO'或'PATH_INFO'。這應該可以發送查詢到這個URL:'youdomain.com/search/q/query_text'。如果你最後還想'.html',試試'$ config ['url_suffix'] ='.html';'。 如果它不起作用,請查看: http://stackoverflow.com/questions/4279904/codeigniter-and-its-uri-protocol –