Как создать форматированные списки Excel из базы данных MySQL? - PullRequest
0 голосов
/ 07 декабря 2018

Я использую базу данных MySQL и должен создать несколько списков в формате Excel (xlsx).Листы Excel должны быть отформатированы.Для экспорта в csv я использую phpExcel (я знаю, он устарел, но все еще работает).

Какие дополнения мне нужно для создания форматированных листов Excel из моей базы данных mySQL.Я использую php для создания внешнего интерфейса.

Спасибо, Маркус

1 Ответ

0 голосов
/ 07 декабря 2018

Это просто копия функции, которую я использую.Он просто запускает функцию, когда установлен определенный $ _GET.Функция создает файл xlsx.Если вы хотите экспортировать файл как .csv, вы можете просто изменить расширение файла и отредактировать текст / xlsm в текст / csv

   $gg = $db->prepare("SELECT * FROM beta_mails ORDER BY created DESC");


    $gg->execute();
            $ggg = $gg->get_result();
            $gg->store_result();

            while ($row = $ggg->fetch_assoc()) {
            $data[] = $row;
        }

        function getprelaunchCSV(){
            global $data;

        header('Content-Type: text/xlsx; charset=utf-8');
        header('Content-Disposition: attachment; filename=data.xlsx');
        // create a file pointer connected to the output stream
        $output = fopen('php://output', 'w');
        // output the column headings
        fputcsv($output, array('ID', 'EMAIL', 'OPRETTET'));
        foreach ($data as $rowCSV){
            fputcsv($output, [$rowCSV["id"], decrypt($rowCSV["email"]), $rowCSV["created"]]);
        }
        fclose($output);
        die();
    }

    if (isset($_GET["getlist"]) && $_GET["getlist"] == "1") {
        echo getprelaunchcsv();
        header("Location:admin?success=1");
    }
...