使用PHP脚本从MySQL数据库创建XLS文件

时间:2012-12-21 03:17:02

标签: php mysql phpmyadmin ms-office xls

我想从MySQL数据库生成带有PHP脚本的XLS文件。这里的一个大问题是,当我打开新导出的.xls文件时,我看到值OK(即格式正确),但字段的颜色变为白色。但是,我需要更改颜色,默认情况下在Excel中。

以下是我用于从数据库中提取数据的PHP脚本。

 <?php
            include 'connect.php';
            $result = mysql_query('SELECT * FROM projects2');

            ?>

        <center><h1>Lista valorilor din tabela</h1>
        <h2><a href="lec_datepm.php?exporta_lista_clienti=1" title="Exporta lista clienti in Excell" target="_blank">Exporta lista Clienti</a></h2></center>

        <?php
            include_once 'tabel_clientipm.php';
        ?>

用于生成XLS文件的PHP文件是:

<?php
    include 'connect.php';
    $result = mysql_query('SELECT * FROM projects2');

    if (isset($_GET['exporta_lista_clienti'])) {
    $filename = 'raportnou.xls';

    header("Content-type: application/ms-excel");
    header("Content-Disposition: attachment; filename=$filename");

    include_once 'tabel_clientipm.php';

    exit();
    }
?>

我添加了tabel_clientipm.php:

<center>
<table border="1">
    <tr>
        <th>surname</th>
        <th>name</th>
        <th>age</th>

    </tr>
    <?php
        while ($client = mysql_fetch_assoc($result)) {
    ?>
    <tr>
        <td><?php echo $client['surname'];?></td>
        <td><?php echo $client['name'];?></td>
        <td><?php echo $client['age'];?></td>

    </tr>
    <?php
        }
    ?>
</table>
</center>

2 个答案:

答案 0 :(得分:0)

如果您导出为csv,则可以将数据导入为无色。

答案 1 :(得分:0)

如果您要创建真实 .xls文件,请在.xls扩展程序中使用PHPExcel

隐藏隐藏的csv或html

它支持以下格式。

  • BIFF 8(.xls)Excel 95及以上
  • Office Open XML(.xlsx)Excel 2007及更高版本

如果你的PHPExcel很慢,请查看these alternatives(由PHPExcel的作者提供。所有这些都比PHPExcel快