Как создать PDF-файл с таблицей PHP в DOMPDF - PullRequest
0 голосов
/ 24 ноября 2018

У меня есть следующая таблица:

table with icon, CSS and dynamic variables

Я хочу представить его с помощью DOMPDF как отчет, но я пробовал, и это то, что я получил до сих пор:

rendered PHP table in PDF file with DOMPDF

Значки и прочее бесполезны, но я хочу, чтобы данные появлялись. Я пытался экспортировать выходные HTML-данные на другую страницу с массивами, но это не работаетили.Кто-нибудь знает, как создать достойный отчет из этой таблицы?

Код таблицы (без нумерации страниц):

<table id="minhatabela" class="table table-user-information" style="font-size: 13px;">
    <thead>
        <tr>
            <th></th>
            <th>Nome <a onClick="changeIconNome()" style="color: #428bca;"><i onclick="sortTable(1)" class="fas fa-sort" id="icon_nome"></i></a></th>
            <th>Data Nascimento </th>
            <th>Serviço <a onClick="changeIconServico()" style="color: #428bca;"><i onclick="sortTable(3)" class="fas fa-sort" id="icon_servico"></i></a></th>
            <th>Observação <a onClick="changeIconObs()" style="color: #428bca;"><i onclick="sortTable(4)" class="fas fa-sort" id="icon_obs"></i></a></th>
            <th>Projeto terapêutico <a onClick="changeIconProj()" style="color: #428bca;"><i onclick="sortTable(5)" class="fas fa-sort" id="icon_proj"></i></a></th>
            <th>Profissional Referente <a onClick="changeIconProf()" style="color: #428bca;"><i onclick="sortTable(6)" class="fas fa-sort" id="icon_prof"></i></a></th>
            <?php  if($linhass['id_area'] != 1 && $linhass['id_area'] != 5 && $linhass['id_area'] != 4) echo "<!--";?>
                <th>Opções</th>
                <?php  if($linhass['id_area'] != 1 && $linhass['id_area'] != 5 && $linhass['id_area'] != 4) echo "-->";?>
        </tr>
    </thead>
    <tbody id="myTable">
     <tr>
                <td>
                    <center><a class="linklink" href="<?php echo $espe; ?>?id=<?php echo $linha['id_usuario']?>"><i class="fas fa-info" title="Mais informações" style="color:black;">&nbsp;&nbsp;&nbsp;</i></a></center>
                </td>
                <td>
                    <?php echo $linha['nome']?>
                </td>
                <td>
                    <?php echo $linha['dia']."/".$linha['mes']."/".$linha['ano'] ?>
                </td>
                <td>
                    <?php echo $linha['servico'] ?>
                </td>
                <td>
                    <?php echo $linha['obs'] ?>
                </td>
                <td>
                    <?php echo $linha['ptspts'] ?>
                </td>
                <td>
                    <?php echo $linha['profissional'] ?>
                </td>
                <?php  if($linhass['id_area'] != 1 && $linhass['id_area'] != 5 ){echo "<!--";}  ?>
                    <td>
                        <center>
                            <a href="altera_saude_lista.php?id_usuario=<?php echo $linha['id_usuario'] ?>" style="color: #428bca;"><i class='far fa-edit' title="Alterar"></i></a>
                            <a href="exclui_saude_lista.php?id_usuario=<?php echo $linha['id_usuario'] ?>" style="color: #428bca;"><i class='far fa-trash-alt' title="Excluir"></i></a>
                        </center>
                    </td>
                    <?php  if($linhass['id_area'] != 1 && $linhass['id_area'] != 5 ) echo "-->";?>

            </tr>
            </tbody>

 </table>

Код генератора PDF:

<?php
ob_start();

include_once ("saude.php");

$html = ob_get_contents();

ob_end_clean();

require_once 'assets/dompdf/autoload.inc.php';

use Dompdf\Dompdf;

$dompdf = new Dompdf();
$dompdf->loadHtml($html);
$dompdf->setPaper('A4', 'landscape');
$dompdf->render();
$pdf = $dompdf->output();
$dompdf->stream();

header('Content-type: application/pdf; charset=utf-8');
echo $pdf;
?>
...