@venom1996

Как экспортировать таблицу html в Excel?

$file="demo.xls";
        $test="<table  ><tr><td>Cell 1</td><td>Cell 2</td></tr></table>";
        header("Content-type: application/vnd.ms-excel");
        header("Content-Disposition: attachment; filename=$file");
        echo $test;

использую такой код, но он экспортирует всю страницу, как мне сделать что бы он экспортировал то что я отправил в переменную file ?
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
Подозреваю что в конце просто надо поставить exit();
Ответ написан
gromdron
@gromdron Куратор тега Битрикс24
Bitrix developer
Если уж мы говорим про Битрикс24, то для начала было бы не плохо не выводить содержимое буфера до вызова вашего кода.
Это можно сделать при помощи кода:
global $APPLICATION;
$APPLICATION->RestartBuffer();


Затем чтобы это все корректно прочиталось, необходимо еще и предотвратить вывод после этого кода.
Упрощенный вариант как можно это сделать:
\CMain::FinalActions();

Таким образом ваш код можно дополнить до следующего результата:
global $APPLICATION;
$APPLICATION->RestartBuffer();

$file="demo.xls";
$test="<table  ><tr><td>Cell 1</td><td>Cell 2</td></tr></table>";
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$file");
echo $test;

\CMain::FinalActions();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы