сформироать excel файл (экспорт) и выдать на скачивание
7 июля 2009 в 12:48
Может у кого примеры есть. Мне нужно сделать экспорт данных (материалов) в нужном мне формате в виде Excel файла, т.е. чтобы при нажатии кнопки сразу скачивался excel-файл.
- Блог
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Комментарии
можно ли средствами друпал? или можно "от" и "до" - на одном голом PHP сделать?
CSV не подходит?
Нужен именно xls?
Можно обойти все материалы и импортировать в csv. На сколько я помню какие-то библиотеки для работы с xls php тоже были. Следовательно и это возможно. Но нужно посмотреть нет ли готовых решений, а то велосипеды - это, это как известно, хорошо сугубо в образовательных целях.
spreadsheet excel writer умеет это делать. Из PEAR. Не друпальный модуль, все ручками подключать придется, плюс некоторый собственный код для соответствующего пожеланиям форматирования выходного файла. Это в том случае если нужен действительно xls, со всеми аттрибутами типа ячейки, цвета, книги... А если по простому - то csv-формат в файл с расширением *.xls, экссель такие файлы вроде как прекрасно открывает.
http://drupaler.ru/module/views_export_xls
И еще может http://drupal.org/project/views_bonus
а как привинтить PEAR к Drupal, может есть средства без PEAR? НАпирмер нашла я phpExcelReader.zip - не зависит от других модулей и надстроек и т.п.
Можно таки свой модуль написать который собственно и будет делать всё что нужно.
С CSV можно работать средствами php (без PEAR) там есть необходимый функционал.
значит его и используйте, я посоветовал то что знал... А этот phpExcelReader - он в какую сторону работает? Это случаянно не читалка ли xls-файлов? Судя по названию...
вот кстати небольшой скрипт нашел, без зависимостей http://www.phpclasses.org/excelwriter, с рабочим примером внутри
Доброго времени суток. Уже давно бьюсь над получением возможности вывести материал со страницы, которая представлена через вьюшку. На эту страницу у меня выводится табличка-каталог продуктов. Как мне вывести такую же табличку в xls файл, чтобы скачал и открыл сразу нормальную привычную для обывателя таблицу.
На даный момент использую модуль: http://drupal.org/project/views_export_xls он дает возможность создает файл нужный мне, файл скачивается, но вот внутри файла при его открытии чтото не то. Вернее не тот формат отображения, я прикрепил снимок экрана с тем как этот файл открылся у меня в ООо, а так же прикрепляю файл собственно который я и открывал в ООо.
Пожалуйста подскажите пожалуйста куда рыть и что делать чтобы в итоге файл эксель получился нормальным, чтобы его можно было вывести на печать.
У меня открылся нормально в Эксель 2003
скрин в аттаче
Спасибо за просмотр. И если вас не затруднит как этот документ распечатается? Нормально? Или пообрезает данные, а так же интересно, будут ли ячейки обведены линиями, ну то есть отобразится ли при печати сетка? За прикрепленное изображение спасибо. И если печатает не корректно (без сетки и обрезает данные) то как исправить подправить код, если конено не затруднит.
Могу ли я зарание определить какой ширины какой столбец должен быть?
Хм.. в общем если использовать модуль http://drupal.org/project/views_bonus то в итоге получается файл который читается в опенофисе. Однако проблема с отрисовкой ячеек и шириной столбцов осталась. Как ее решать? Подскажите.
И еще вопрос: на странице отображения, где я сделал ссылку на скачивание файлов, при щелчке на скачивание файл ткрывается нормально, но там есть пустые строчки, которые соответствуют другим нодам, которые отфильтровываются вьсом. А так же там не учитывается при выводе в xls файл сортировка полей, так как это происходит в отображении того что хотелось бы выводить в xls. К тому же не учитывается и поиск.
Ну пожалуйста подскажите куда копать хотя бы, чтобы получилось отформатировать получаемый файл? К сообщению креплю файлы как выглядет то что скачал, и как выглядит то как хотелось бы видеть скачанный файл.
По поводу того как убрать пустые поля, добавлявшиеся как я писал в посте выше, я разобрался. Надо было в дисплее для отображения ссылки на скачивание файла выставить такие же фильтры как и на самой странице с каталогом. Теперь получается еще и в файл отправлять только те данные которые отвечают критериям поиска, например "ВАЗ" в этом случае у меня выводится в файл только то что для ваза...
Пожалуйста опишите или направьте на путь правильный как сделать аккуратное форматирование документа, чтобы можно было вывести его сразу на печать.
Жду с нетерпением ваших ответов, и сам продолжаю искать решение.
Прошу прощения, этот вопрос настолько сложен, что никто подсказать не может его решение? Я уже начал смотреть в сторону PEAR Spreadsheet_WriteExcel и еще смотрю PHPExcel вот соответствующие ссылки на проекты: http://freshmeat.net/projects/spreadsheet_writeexcel/ и http://phpexcel.codeplex.com/ соответственно для первого и для второго. Насколько я понял задача отформатировать ячейки не относится к тривиальным задачам типа создать xls файл. Прошу помочь разобраться, каким образом в модуле Viewse Bonus Pack создается файл xls? Через какую то библиотеку или как то еще?