2014-03-24 94 views
0

我有一個控制器處理記錄添加到數據庫。有時這些記錄需要輸入幾個密碼才能「簽署記錄」。因此,當表單被提交時,它被傳遞給名爲「getSignatures」的控制器中的函數。這將加載一個視圖,輸入所需的密碼。用戶然後將輸入他們的密碼來「簽署文件」。然後這將被傳遞給控制器​​中稱爲「checkSignatures」的函數,該函數將調用模型中的函數來檢查密碼。Codeigniter - 從控制器傳遞數組,以查看,然後到另一個控制器

但是,我仍然需要通過或保存表單提交時的所有數據。

我已經嘗試使用全局變量來保存表單數據,但是當checkSignatures函數被調用時,它通過一個新的控制器被調用。我也嘗試通過表單數據傳遞給視圖,將其保存在隱藏的輸入中,然後通過後傳遞它,但不能將數組保存在隱藏的輸入中。

任何想法都會很棒,對於冗長的問題抱歉。

+0

爲什麼不使用AJAX來檢查這些簽名,並在所有數據都經過驗證後再進行實際發佈? –

回答

1

嘗試使用here所述的會話。特別是你應該看看CodeIgniter的flash數據。

會話將存儲在服務器上,用於整個用戶的瀏覽會話。這會讓你再次訪問數據。 Flashdata在下一次加載頁面後被刪除,因此它們不會長時間滯留。

+0

在session/flashdata中保存數組是否可行?我的理解是,它們被用於更簡單的變量?在這種情況下,它是完美的,因爲它只是一個小陣列,但供將來參考。謝謝! – DJDMorrison

+0

我不確定CodeIgniter是否會自動執行它,但是您可以使用PHP的serialize()。 http://www.php.net/manual/en/function.serialize.php – crunch

+0

啊我用序列化來存儲數據庫中的數組,所以是的,這將工作。 – DJDMorrison

相關問題