Доброго времени суток. Сейчас я разрабатываю простенький конструктор отчетов. Пользователь выбирает данные из базы, после чего информация выводиться в виде таблицы на экран, далее можно сохранить эту таблицу в виде xlsx файла. Как раз с сохранением у меня и возникла проблема. Сохраняю я с помощью библиотеки PHPExcel. Чтобы пользователь мог выбрать путь сохранения согласно документации нужно добавить такой код:
PHP:
скопировать код в буфер обмена
// Redirect output to a client’s web browser (Excel2007) header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="01simple.xlsx"'); header('Cache-Control: max-age=0'); // If you're serving to IE 9, then the following may be needed header('Cache-Control: max-age=1'); // If you're serving to IE over SSL, then the following may be needed header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header ('Pragma: public'); // HTTP/1.0
Проблема в том, что когда я добавляю этот код, вместо окошка, где пользователь выбирает путь сохранения файла, на экране появляется набор бессвязных символов. Я понял, что это связано с тем, что информацию header нужно отправлять до html тегов т.к. добавив этот код в самое начало, я обнаружил, что окошко появилось после загрузки сайта. Загвоздка в том, что пользователь должен сначала выбрать данные с помощью различных списков и полей, которые в свою очередь описываются с помощью тегов и должны быть выведены на экран. Подскажите, как можно решить эту проблему?(Отредактировано автором: 16 Апреля, 2014 - 20:29:07)
|