Bem, como o NoComments é um inutil e preguiçoso, tive remodelar o código para gerar um arquivo de Excel... em troca ele me prometeu 40% de seu sálario e mais 20% do seu 13°.
Para esta ocasião achei interessante usar a classe Spreadsheet_Excel_Writer para gerar o xls... veja como é simples e lembre que funciona em windows e linux sem problema.
<?php
require_once "DB.php";
require_once 'Spreadsheet/Excel/Writer.php';
/**
* Configuracao do banco de dados
*/
$dsn = "mysql://usuario:senha@host/bancodedados";
/**
* Escreva aqui sua query.
*/
$sql = "";
/**
* Arquvio que sera gerado com o resultado da query
*/
$xls_file = "resultado.xls";
/**
* Inserre o nome dos campos na primeira linha
*/
$header = true;
$db = DB::connect($dsn);
if (DB::isError($db)) {
trigger_error("Conection to database server fail. (".
$db->
getMessage().
")",
E_USER_ERROR);
}
$db->setFetchMode(DB_FETCHMODE_ASSOC);
$rs = $db->query($sql);
if (DB::isError($rs)) {
$db->disconnect();
}
if ($rs->numRows() == 0) {
$db->disconnect();
}
$workbook = new Spreadsheet_Excel_Writer();
$workbook->send($xls_file);
$worksheet =& $workbook->addWorksheet('My first worksheet');
$row = $col = -1;
while($row_db = $rs->fetchRow()) {
if ($header) {
$row++;
$header = false;
foreach($row_db as $key => $value) {
$worksheet->write($row, ++$col, $key);
}
}
$row++;
$col = -1;
foreach($row_db as $key => $value) {
$worksheet->write($row, ++$col, $value);
}
}
$rs->free();
$workbook->close();
$db->disconnect();
?>
t+