2013-08-29 11 views
0

我在CodeIgniter上有一個應用程序,它使用一些信息生成PDF報告。在這之前,我需要在控制器中執行一個函數來保存數據庫中的數據。我使用JavaScript調用控制器上的方法。如何在重定向到PDF控制器之前調用該函數?我有這樣的:在CodeIgniter中加載視圖前執行方法

window.open("codeIgniterURL/Controller1/function1",'_self',false); 
    window.open("codeIgniterURL/Controller2/function2",'_self',false); 

所以我需要做的,是開口控制2的窗口之前調用控制器1的功能的視圖中我現在要做的就是用window.open打開控制器1 ,並在該控制器重定向到我調用該方法的視圖,但它不像我需要的那樣工作。

任何幫助真的很感激。

+0

保存數據....然後加載視圖/給出輸出。我沒有看到這裏有什麼確切的問題.... – itachi

+0

嗨,你是否使用相同的數據來查看PDF格式的報告,你正在保存只是讓我知道? – umefarooq

+0

問題是我需要通過單擊視圖內的按鈕來保存數據,然後在該視圖上生成PDF。同樣的按鈕必須做到這一點,先保存,然後顯示數據。當我執行window.open來保存數據並返回到視圖時,所有的數據都會丟失。任何方式來保存數據,而不必做一個window.open? – Vito

回答

1

如果這有幫助,我通過使用兩個控制器,一個模型和一個Ajax調用來完成此操作。

在控制器1中,我有編寫PDF的代碼。

控制器2調用模型寫入數據庫。然後它實例化Controller 1,使用ghostScript創建生成的PDF圖像,並在會話變量中設置PDF的名稱。

在我看來,我使用Ajax將發佈數據發送到控制器2,然後使用會話變量動態顯示爲PDF創建的圖像和下載按鈕。