2013-08-29 4 views
0

У меня есть приложение на CodeIgniter, которое генерирует отчет в формате PDF с использованием некоторой информации. Прежде чем это сделать, мне нужно выполнить функцию в контроллере для сохранения данных в базе данных. Я вызвал методы на контроллере с помощью JavaScript. Как я могу вызвать функцию перед перенаправлением на контроллер PDF? У меня есть это:Метод выполнения перед загрузкой в ​​CodeIgniter

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

Так что мне нужно сделать, это вызвать функцию controller1 в представлении перед открытием окна контроллера 2. Что я могу сделать сейчас, чтобы открыть Controller1 с window.open , и в этом контроллере перенаправляется на представление, где я вызывал метод, но он не работает, как мне нужно.

Любая помощь действительно оценена.

+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.