我有一個笨的形式,看起來有點像這樣的代碼:一種形式,崗位價值,然後重新本身就說明在笨沒有AJAX
<?php echo form_open_multipart('admin/updateperson', array("id" => "updateform")); ?>
<input placeholder="First name" name="fname" id="fname" value="<?= form_prep($person->fname) ?>" />
<?= form_submit("save", "Save"); ?>
<?php echo form_close(); ?>
我希望能夠打保存,並有它會轉到一個控制器,該控制器會將上傳的數據保存到數據庫中,然後將我轉發給首先顯示錶單的控制器,這會將我返回到同一頁面,顯示更新的詳細信息。
我目前正在使用上傳控制器中的redirect
調用時取得有限的成功,因此CodeIgniter只是將請求正常路由到原始Controller,該Controller從數據庫讀取並顯示錶單。這種作品。
但是,有一個錯誤:雖然它確實更新數據庫中的數據,它顯示我的原始形式,它顯示我以前的值!這些可以通過點擊F5或再次進入頁面來清除,但看起來很糟糕。
有沒有更好的方法來做到這一點?我會考慮使用set_form
,但這只是爲驗證失敗而設計的,顯然?
我以前做過類似的事情,它的工作原理。你確定$ person-> fname包含更新的數據,並且在更新數據庫之前你沒有以某種方式填充「$ person-> fname」(我知道這在你的情況下特別不可能,但值得一檢查) –
嗯,不這麼認爲;可能通過'redirect'調用生存下來? –
不...但也許你在重定向後做些什麼? –