在CodeIgniter中加载视图之前执行方法

时间:2013-08-29 05:18:38

标签: php codeigniter

我在CodeIgniter上有一个应用程序,它使用一些信息生成PDF报告。在此之前,我需要在控制器中执行一个函数来保存数据库中的数据。我使用JavaScript调用控制器上的方法。如何在重定向到PDF控制器之前调用该函数?我有这个:

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

所以我需要做的是在打开控制器2的窗口之前在视图中调用controller1的函数。我现在要做的是用window.open打开Controller1,并在该控制器中重定向到查看我调用该方法的位置,但它不能像我需要的那样工作。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

如果这有帮助,我通过使用两个控制器,一个模型和一个Ajax调用来完成此任务。

在Controller 1中,我有编写PDF的代码。

Controller 2调用模型写入数据库。然后它实例化Controller 1,使用ghostScript创建生成的PDF的图像,并在会话变量中设置PDF的名称。

在我看来,我使用Ajax将发布数据发送到Controller 2,然后使用会话变量动态显示创建的图像和PDF的下载按钮。