Выгрузка в excel таблицу из БД на сайте.

ZloyDoktor

Добрый день!
Подскажите как новичку в PHP сделать выгрузку содержимого базы в файл формата .xls

Я нашел решение тут …. https://www.delay-delo.com/content/eksport-dannyh-iz-mysql-v-excel-dva-prostyh-sposoba

Но при выгрузке выгружает в файл еще и ошибки фото ниже…
[​IMG]

что мне поправить в файле обработчика?
Вот код самого файла на тестовой ветке…

PHP:
  1. <?PHP
  2. function cleanData(&$str)
  3. {
  4.     $str = preg_replace(“/t/”, \t”, $str);
  5.     $str = preg_replace(“/r?n/”, \n”, $str);
  6.     if(strstr($str, ‘”‘)) $str = ‘”‘ . str_replace(‘”‘, ‘””‘, $str) . ‘”‘;
  7. }
  8. // Имя загружаемого файла.
  9. //В моём примере получится otched_20150331.xls
  10. $filename = “zno_” . date(‘Ymd’) . “.xls”;
  11.  
  12. header(“Content-Disposition: attachment; filename=$filename);
  13. header(“Content-Type: application/vnd.ms-excel”);
  14.  
  15. // Подключение к бд
  16. define(‘DB_HOST’, ‘localhost’);
  17. define(‘DB_USER’, ‘root’);
  18. define(‘DB_PASS’, );
  19. define(‘DB_NAME’, ‘table’);
  20.  
  21. $DBConnect = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
  22. if ($DBConnect->connect_errno) exit(‘Ошибка подключения к БД’);
  23. //Указать кодировку выводимых данных
  24. $DBConnect->set_charset(‘cp1251’);
  25.  
  26. //Запрос и вывод данных
  27. $flag = false;
  28. $table = “kmp5”;
  29. $result = $DBConnect ->query(“SELECT * FROM $table ORDER  by  id DESC”)
  30. or die(‘Warning!’);
  31.  
  32.  
  33. while(false !== ($row = mysqli_fetch_assoc($result))) {
  34.     if(!$flag) {
  35.         // Вывод заголовков
  36.         echo implode(t, array_keys($row)) . rn;
  37.         $flag = true;
  38.     }
  39.     //Вывод данных столбцов
  40.     array_walk($row, ‘cleanData’);
  41.     echo implode(t, array_values($row)) . rn;
  42.     if ($row == null) {
  43.         die(!$row);
  44.     }
  45. }
  46. ?>
 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *