将MySQL表保存到本地计算机

时间:2013-09-10 11:25:05

标签: php mysql excel save ob-start

起初,我想原谅我的英语,但我有一个问题

我以这种方式从数据库创建一个表:

//the connection goes right, so I don't put it into my code

<table id="database">
<tr>
    <th>Title1</th>
    <th>Title2</th>
    <th>Title3</th>
    <th>Title4</th>
</tr>
<?php
    $result = mysql_query("SELECT * FROM `table`");
    while($row = mysql_fetch_array($result))
    {
        echo "<tr>";
            echo "<td>".$row['Column1']."</td>";
            echo "<td>".$row['Column2']."</td>";
            echo "<td>".$row['Column3']."</td>";
            echo "<td>".$row['Column4']."</td>";
        echo "</tr>";
    }
?>
</table>

问题是我正在尝试将这些数据存入文件,因为我想在网上删除这些列,因为我想在线删除这些表。

我已尝试TCPDFhtml2pdf

没有义务将这些内容放入pdf,但我希望这些只是保存。

我希望你能帮助我。

更新:有两个很好的解决方案。但是我的Acrobat Reader出了问题所以我选择了这个问题:

<?php
    ob_start();
?>
<table id="database">
    <tr>
        <th>Title1</th>
        <th>Title2</th>
        <th>Title3</th>
        <th>Title4</th>
    </tr>
<?php
    $result = mysql_query("SELECT * FROM `table`");
    while($row = mysql_fetch_array($result))
    {
        echo "<tr>";
            echo "<td>".$row['Column1']."</td>";
            echo "<td>".$row['Column2']."</td>";
            echo "<td>".$row['Column3']."</td>";
            echo "<td>".$row['Column4']."</td>";
        echo "</tr>";
    }
?>
</table>
<?php
    $output = ob_get_contents();
    $filename = "column".time().".xls";
    file_put_contents($filename, $output) or die("can't write to the file");
?>
<a href="<?php echo $filename; ?>">Print</a>

2 个答案:

答案 0 :(得分:1)

您只需使用以下代码保存为HTML表格,或者可以从SQL导出数据,然后导入到本地SQL服务器。

<?php
ob_start();
?>
<table id="database">
<tr>
    <th>Title1</th>
    <th>Title2</th>
    <th>Title3</th>
    <th>Title4</th>
</tr>
<?php
    $result = mysql_query("SELECT * FROM `table`");
    while($row = mysql_fetch_array($result))
    {
        echo "<tr>";
            echo "<td>".$row['Column1']."</td>";
            echo "<td>".$row['Column2']."</td>";
            echo "<td>".$row['Column3']."</td>";
            echo "<td>".$row['Column4']."</td>";
        echo "</tr>";
    }
?>
</table>
<?php
$output = ob_get_contents();
$filename = "column".time().".txt";
file_put_contents($filename, $output) or die("can't write to the file");
?>

答案 1 :(得分:1)

对于简单的PDF,我强烈建议使用mPDF。

http://www.mpdf1.com/mpdf/index.php

  1. 下载mPDF

  2. 在本地服务器上解压缩

  3. 这是一个基于您的代码的工作示例。


  4. <?
    //path to your newly installed mPDF
    include('/mpdf/mpdf.php');
    
    $html='
    <table id="database">
    <tr>
        <th>Title1</th>
        <th>Title2</th>
        <th>Title3</th>
        <th>Title4</th>
    </tr>';
    
    //$result = mysql_query("SELECT * FROM `table`");
    //here just a test
    $rows=array();
    $rows['Column1']='A';
    $rows['Column2']='B';
    $rows['Column3']='C';
    $rows['Column4']='D';
    
    //while($row = mysql_fetch_array($result))  {
    //here just a test
    foreach ($rows as $row)  {
        $html.="<tr>";
        $html.="<td>".$row['Column1']."</td>";
        $html.="<td>".$row['Column2']."</td>";
        $html.="<td>".$row['Column3']."</td>";
        $html.="<td>".$row['Column4']."</td>";
        $html.="</tr>";
    }
    $html.='</table>';
    
    $mpdf=new mPDF('c');
    $mpdf->debug = true;
    $mpdf->WriteHTML($html);
    $mpdf->Output('test','D');
    ?>
    

    调用此脚本将生成一个名为test.php的精美PDF,存储在您的下载路径中。


    enter image description here