javascript - 将带分页的 PHP 表导出为 EXCEL、PDF、PRINTABLE

标签 javascript php jquery export-to-excel export-to-pdf

如何将分页的 php 表导出为 Excel 和 pdf 格式?我在 youtube 上尝试了很多插件和教程仍然没有成功,但它们只显示数据而不是整个表格本身。如果我可以将表格转换为 PDF 或 Excel 格式,我希望将表格导出为至少可打印的版本。在我的 table 上,我最多有 100 行分页,每页 10 行。我怎样才能做到这一点?我需要你的专业知识。

Here is the screen shot of the table

PHP 导出到分支:

<?php

include "connect.php";
require('lib/js/fpdf.php');

$result = mysqli_query($conn,"SELECT * FROM tblSales");

$header = mysqli_query($conn,"SELECT UCASE('date','sales') 
    FROM 'INFORMATION_SCHEMA'.'COLUMNS' 
    WHERE 'TABLE_SCHEMA'='DB_NAME' 
    AND 'TABLE_NAME'='tblSales'
    and 'COLUMN_NAME' in ('date','sales')");

    $pdf = new FPDF();

$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
foreach($header as $heading) {
    foreach($heading as $column_heading)
        $pdf->Cell(95,12,$column_heading,1);
}
foreach($result as $row) {
    $pdf->Ln();
    foreach($row as $column)
        $pdf->Cell(95,12,$column,1);
}
$pdf->Output();


?>

AJAX 代码:

$(document).on('click', '.export-branch-excel', function () {
    var branch = $("#branch-hidden-data").val();
    $.ajax ({
        url:"export-branch-excel.php",
        data: "id="+branch,
        method: "POST",
        dataType: "text",
        success: function(data){
            window.location = "export-branch-excel.php";
        }
    });
});

最佳答案

@lawrence agulto 我将此代码更改为程序类型,正如您所说。试试这个代码。

Download In excel:

            <?php

            include_once "connect.php";

                $query = mysqli_query($conn,"SELECT * FROM tblSales ORDER BY date DESC ");


                $columnHeader = "Column Name"."\t"."Column Name1"."\t"."Column Name2"."\t"."Column Name3"."\t";

                $setData='';
                if (mysqli_num_rows($query) > 0) {
                    while ($rec = mysqli_fetch_assoc($query)) {
                        $rowData = '';

                        foreach ($rec as $value) {
                            $value = '"'.$value.'"'."\t";
                            $rowData.=$value;
                        }
                        $setData.=trim($rowData)."\n";
                    }
                }


                header("Content-type: application/octet-stream");
                header("Content-Disposition: attachment; filename=Nobelz_Sushank.xls");
                header("Pragme: no-cache");
                header("Expires: 0");

                echo "\t\tSales Data\n";
                echo ucwords($columnHeader)."\n".$setData."\n";
            ?>

Download in pdf :

Download the FPDF library from here.

并根据您的需要更改查询、表名称和 TABLE_COLUMN_NAME

    <?php

    $result = mysqli_query($conn," Your QUery");

    $header = mysqli_query($conn,"SELECT UCASE(`COLUMN_NAME`) 
    FROM `INFORMATION_SCHEMA`.`COLUMNS` 
    WHERE `TABLE_SCHEMA`='DB_NAME' 
    AND `TABLE_NAME`='TABLE_NAME'
    and `COLUMN_NAME` in ('TABLE_COLUMN_NAME','TABLE_COLUMN_NAME1', 'TABLE_COLUMN_NAME2', 'TABLE_COLUMN_NAME3')");


    require('fpdf181/fpdf.php');

    $pdf = new FPDF();
    $pdf->AddPage();
    $pdf->SetFont('Arial','B',16);
    foreach($header as $heading) {
        foreach($heading as $column_heading)
            $pdf->Cell(95,12,$column_heading,1);
    }
    foreach($result as $row) {
        $pdf->Ln();
        foreach($row as $column)
            $pdf->Cell(95,12,$column,1);
    }
    $pdf->Output();
  ?>

关于javascript - 将带分页的 PHP 表导出为 EXCEL、PDF、PRINTABLE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49061958/

相关文章:

javascript - 如何使 PIXI 渲染器适应浏览器的宽度和高度?

javascript - 内容 slider 概念

javascript - 将 onerror 函数添加到 XMLHttpRequest

php - 当用户重命名另一个表中的数据时更新列

javascript - 通过 jquery 添加的数据属性不可用于选择元素

jquery - UI 选项卡旋转窃取焦点

javascript - 从 facebook url 中提取 id 值

PHP 正则表达式删除 http ://from string

php - 获取查询中带有限制的所有行

Jquery all 选择器 - 在单击的 div 上仅触发一次