@maxdit

Почему собирается не рабочий exel?

Здравствуйте, взял код с данного источника it.w-develop.com/export-eksport-mysql-v-excel-real...
Внёс вроде бы все правки(там кавычки сменил и тому подобное)
Вот мною отредактированный код:
mysql_connect("localhost","name_bd","pass");
mysql_select_db("bd");
$qry_data=mysql_query("SELECT * FROM user");

function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
function xlsBuatBaris($data, $Col, $Value) {
echo pack("sssss", 0x203, 14, $data, $Col, 0x0);
echo pack("d", $Value);
return;
}
function xlsBuatLabel($data, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $data, $Col, 0x0, $L);
echo $Value;
return;
}
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition: attachment;filename=employee.xls ");
header("Content-Transfer-Encoding: binary ");

xlsBOF();

xlsBuatLabel(0,0,"DAFTAR DATA PRIBADI");

xlsBuatLabel(2,0,"NIP");
xlsBuatLabel(2,1,"NAMA");
xlsBuatLabel(2,2,"ALAMAT");

$xlsRow = 3;

while($data=mysql_fetch_array($qry_data)){
xlsBuatBaris($xlsRow,0,$data['id']);
xlsBuatLabel($xlsRow,1,$data['name']);
xlsBuatLabel($xlsRow,2,$data['surname']);
$xlsRow++;
}

xlsEOF();
exit();
  • Вопрос задан
  • 221 просмотр
Пригласить эксперта
Ответы на вопрос 1
DarkRaven
@DarkRaven
разработка программного обеспечения
Не морочьте голову себе и воспользуйтесь, к примеру, https://github.com/mk-j/PHP_XLSXWriter .
Не сильно отдаленный аналог того, что вы делаете:
$data = array(
    array('year','month','amount'),
    array('2003','1','220'),
    array('2003','2','153.5'),
);

$writer = new XLSXWriter();
$writer->writeSheet($data);
$writer->writeToFile('output.xlsx');


Пользуюсь этой библиотекой относительно давно, еще не было проблем.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы