簡體   English   中英

將表單值傳遞給CakePHP中的控制器操作參數

[英]Passing form values to controller action params in CakePHP

在我的HTML表單中,我需要這樣的URL輸出:“ example.com/mycontroller/action/mike/apple”

  • 當我使用“發布”提交表單時,我的表單值不可見,可以通過“ _POST”獲取。 我不喜歡它,因為它產生如下輸出:“ example.com/mycontroller/action/”
  • 當我使用“獲取”提交時,我的表格將變成“ example.com/mycontroller/action?type=mike&key=apple”
  • 我也不希望使用javascript更改表單操作,例如:“ onSubmit接受select的值並將其附加到表單操作中”,因為我不希望此代碼段與javascript相關。
  • 我可以使用“ get”或“ post”提交表單來解析POST或GET的系統變量,然后進行重定向。 像這樣:將這個“ example.com/mycontroller/action?type=mike&key=apple”重定向到這個“ example.com/mycontroller/action/mike/apple”,但是我發現這個解決方案設計得不好。 是否可以使用斜杠(問號除外)傳遞表單值

     < form class="well form-horizontal" id="myform" method="get" action="/mycontroller/action" > <select name="type" id="type"> <option value="mike" selected="selected"> mickey bricks</option> <option value="albie">albert</option> </select> <input type="text" name="key" class="input-xlarge" id="key" required="required"> <button type="submit" class="btn btn-primary" id="submit"> submit </button> </form> 

如果您創建POST表單,則將其發布哪里並不重要,重要的是它將重定向哪里。 許多站點搜索將您重定向到www.domain.com/search/search_terms,因此,如果這是搜索表單,則重定向到../action/mike/apple並沒有錯。

此外,如果它是POST表單,那么搜尋爬蟲將不會填寫該表單(或者至少在我所知的范圍內),因此,該表單向何處發布也無關緊要,返回值和它在哪里重定向。

這實際上取決於您要完成什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM