2012-07-25 25 views
0

我是codeigniter的新手,我面臨的一個小問題。我有一個名爲「test」的控制器,並希望在該控制器中調用「edit_details」動作。這是我正在開發的測試應用程序。我想更新一個用戶的信息,我通過URL地址(URL段)發送用戶ID:「http://localhost/codeigniter/index.php/test/edit/12」爲例。編輯操作使用可以輸入用戶詳細信息的表單加載視圖。這是通過使用視圖中的錨(每條記錄旁邊的編輯鏈接)完成的。 Anchor:「test/edit/$ row-> id」。到目前爲止,一切都很好。Codeigniter中的表單操作被添加到現有的URL

問題是,當我提交表單的動作'測試/ update_details',然後url變成「http://localhost/codeigniter/index.php/test/edit/test/update_details'」。 edit_details動作加載一個模型,然後做數據庫的東西。該ID使用視圖中的隱藏字段發送。

我不確定這裏發生了什麼問題。當我打電話給控制器時,URL似乎沒有改變。它要麼保持不變,要麼附加到現有的URL。我試圖谷歌搜索解決方案,但沒有找到任何。

我還沒有刪除我的index.php,因爲這是一個測試應用程序。 在配置文件中我基本URL是:「HTTP://本地主機/笨/」 自動加載的助手是:形式和URL 自動加載庫是:數據庫

在此先感謝。

+0

這是很難確定的本problema的主要原因。你可以添加你的測試控制器代碼嗎? – manix 2012-07-26 17:21:39

回答

0

這聽起來像你需要使用base_url()返回表單。 換句話說:

http://localhost/codeigniter/index.php/test/edit/test/update_details 

是錯誤的。我相信你真的試圖通過編輯查看詳細信息:

http://localhost/codeigniter/index.php/test/update_details 

通過提交,你的網址越來越亂了。 你form_open應該是這樣的:

echo form_open(base_url()."test/update_details"); 
+0

謝謝!這工作! – 2012-08-03 18:53:05