Кнопка "Сохранить в Excel"

Krot_imns

Новичок
Кнопка "Сохранить в Excel"

Вопрос - как реализовать такую кнопку (или ссылку)?

Описание:
- формирую страницу данными, полученными от другого сервера по XML-RPC;
- далее надо посадить эту кнопень как-то, чтобы по ее нажатию сработал механизм генерации Excel-файла (с помощью PEAR-Spreadsheet) с этими же данными:

* Делать отдельную страницу, формирующую этот файл и опять получающую данные по xml-rpc (не охота опять иметь задержку и напрягать сервер повторно)?
* или как-то передать эти данные по ссылке в эту страницу?
* или формировать excel параллельно отображению данных, а по кнопке отсылать хедер (Spreadsheet_Excel_Writer::send ) - но как?
 

Сергей123

Новичок
>> или как-то передать эти данные по ссылке в эту страницу?
serialize - и в сессию (или в базу)
 

Necromant

Новичок
Или предварительно снегерить файл, сохранить в кеше, а на онКлик отдать ссылку :)
 

Krot_imns

Новичок
>> serialize - и в сессию (или в базу)
.... надеюсь понимаю правильно?
У меня есть 5 ассоциативных массивов-результатов выборок процедурами с sql-сервера. Я применяю к ним по очереди serialize () -> получаю 5 строк, которые записываю в сессию.
Пойдя по ссылке на другую строницу достаю их из сессии и применяю unserialize (). Массивы восстанавливаются в первоисходном виде? :)
Если все так, то у меня реальные сомнения по поводу
размера этих строк, ведь результат выборки (каждый массив) может быть очень велик (ну, 200 строк по 20 записей, например...)

>>Или предварительно снегерить файл, сохранить в кеше, а на онКлик отдать ссылку

- файл сгенерю,
- сохранить в кеше - как?
- как отдать ссылку?

...... спасибо за помощь и толковые объяснения (ссылки), если не трудно.
 

Necromant

Новичок
т.е., как , также в сесси , хранишь из tempname имя , путь по дефолту /home/www/cache

а на нужной страницу , отдаешь
 

Krot_imns

Новичок
Автор оригинала: Necromant
т.е., как , также в сесси , хранишь из tempname имя , путь по дефолту /home/www/cache

а на нужной страницу , отдаешь
.... не нашел в phpinfo () ничего похожего на tempname. (или этот путь - не php установил, а ОС? )

.......... /home/www/cache - это где написано?

..... и что в этой папке cache эти файлики складироваться будут? А удаляться как?

....... где можно почитать про кеширование, а то детские вопросы задавать достало, сам не нашел...

-~{}~ 03.08.05 09:24:

..... еще вопрос - а есть механизм, который бы подчищал папку с сессиями или вручную только периодически удалять?
А то если их размер большой - понаплодятся ......
 

BuTbKa

Новичок
По ходу вывода данных. Записывай в обыкновенный файл с именем типа tmp0678.tmp при нажатии на кнопку передавай имя файла а там уже считывай данные и в Excel их. А потом удаляй.
 

Krot_imns

Новичок
>> т.е., как , также в сесси , хранишь из tempname имя , путь по дефолту /home/www/cache.....

..... аа, дотукал, что "tempname" (c) - это tempnam () :)


Автор оригинала: BuTbKa
По ходу вывода данных. Записывай в обыкновенный файл с именем типа tmp0678.tmp при нажатии на кнопку передавай имя файла а там уже считывай данные и в Excel их. А потом удаляй.
... a как отследить момент, когда надо удалять?
... а что, если у пользователя дисконнект, тогда как докачивать, если уже нету файла (если удалять сразу)?
 

BuTbKa

Новичок
... a как отследить момент, когда надо удалять?
... а что, если у пользователя дисконнект, тогда как докачивать, если уже нету файла (если удалять сразу)?
Удалять в конце скрипта, когда в Excel файл сохранишь данные.
 
Сверху