打印仅报告1页的6个数据

时间:2016-02-13 21:40:07

标签: php html css

我创建一份报告。我尝试打印预览此报告。

但我希望显示6个数据/页面大小a4(横向)。

我已经尝试了循环24数据。并尝试在谷歌浏览器中打印预览 那里有1个数据必须降到第2页

看我的照片 enter image description here

然后我检查第2页已经相同。

这一页2 enter image description here

如何解决这个问题,我希望报告只显示6个数据/页

这是我的完整代码,您可以在localhost中尝试。

    <style>
    #caption
    {
        color:white;
        font-weight:bold;
        text-align:center;
        background-color: #4CAF50;
    }
    table
    {
        border-collapse: collapse;
    }
    th, td 
    {
        padding: 0px;
        font-family:arial;
        font-size:13px
    }

    tr:nth-child(even){background-color: #f2f2f2}

    th {
        background-color: #4CAF50;
        color: white;
    }
</style>

<table align="center" width="100%" border="1">

    <tr>
        <td colspan="7" style="vertical-align: top;" id="caption"><font size="3">Data Pendaftar</font></td>
    </tr>
    <?php 
    $x = 1;
    while($x <= 24) 
    {

    ?>
    <tr>
        <td id="caption">Foto Siswa/i</td>
        <td id="caption">Nama Lengkap Siswa/i</td>
        <td id="caption">Tempat Lahir</td>
        <td id="caption">Tanggal Lahir</td>
        <td id="caption">Usia</td>
        <td id="caption">L/P</td>
        <td id="caption">Agama</td>
    </tr>
    <tr>
        <td align="center" rowspan="3">
            <img border="1" src="https://akphoto4.ask.fm/769/854/890/910003014-1s093lj-dc47ceo09kenpt5/original/avatar.jpg"style="width:80px;height:80px;">
        </td>
        <td align="center">Muhamad Ridwansyah</td>
        <td align="center">Jakarta</td>
        <td align="center">13 November 1995</td>
        <td align="center">20</td>
        <td align="center">L</td>
        <td align="center">Islam</td>
    </tr>
    <tr>
        <td id="caption" colspan="2">Alamat</td>
        <td id="caption" colspan="2">No. Telpon | No. Hp </td>
        <td id="caption" >Tanggal Daftar</td>
        <td id="caption">Status</td>
    </tr>   
    <tr>
        <td colspan="2">Jl. Gandaria III No.11 Rt012/002 Kel. Pekayon Kec. Pasar Rebo Jakarta Timur</td>
        <td colspan="2" align="center">0218713262 | 083873375529</td>
        <td >07 Februari 2016 13:15:33</td>
        <td align="center">Pending</td>
    </tr>
    <?php 
    $x++;
    } 
    ?>
</table>

1 个答案:

答案 0 :(得分:1)

在这种情况下,您可以为每页创建一个单独的表,只有6行。仅在第一页上显示“Data Pendaftar”,将class="break"添加到除最后一页上的表之外的每个表,并添加CSS规则table.break{page-break-after:always}。我在每个表之后添加了<br />,因此在打印之前它在浏览器中看起来很好。这将始终每页打印6行,即使您不小心处于纵向模式...

<style>
    #caption{color:white;font-weight:bold;text-align:center;background-color:#4CAF50}
    table{border-collapse:collapse}
    th, td{padding: 0px;font-family:arial;font-size:13px}
    tr:nth-child(even){background-color:#f2f2f2}
    th{background-color:#4CAF50;color:white}
    table.break{page-break-after:always}
</style>
<?php $i = 1; while ($i <= 4) { ?>
    <table align="center" width="100%" border="1"<?php if ($i < 4) { ?> class="break" <? } ?>>
<?php if ($i == 1) { ?>
    <tr>
    <td colspan="7" style="vertical-align: top;" id="caption"><font size="3">Data Pendaftar</font></td>
    </tr>
<?php } $x = 1; while ($x <= 6) { ?>
    <tr>
        <td id="caption">Foto Siswa/i</td>
        <td id="caption">Nama Lengkap Siswa/i</td>
        <td id="caption">Tempat Lahir</td>
        <td id="caption">Tanggal Lahir</td>
        <td id="caption">Usia</td>
        <td id="caption">L/P</td>
        <td id="caption">Agama</td>
    </tr>
    <tr>
        <td align="center" rowspan="3">
            <img border="1" src="https://akphoto4.ask.fm/769/854/890/910003014-1s093lj-dc47ceo09kenpt5/original/avatar.jpg"style="width:80px;height:80px;">
        </td>
        <td align="center">Muhamad Ridwansyah</td>
        <td align="center">Jakarta</td>
        <td align="center">13 November 1995</td>
        <td align="center">20</td>
        <td align="center">L</td>
        <td align="center">Islam</td>
    </tr>
    <tr>
        <td id="caption" colspan="2">Alamat</td>
        <td id="caption" colspan="2">No. Telpon | No. Hp </td>
        <td id="caption" >Tanggal Daftar</td>
        <td id="caption">Status</td>
    </tr>   
    <tr>
        <td colspan="2">Jl. Gandaria III No.11 Rt012/002 Kel. Pekayon Kec. Pasar Rebo Jakarta Timur</td>
        <td colspan="2" align="center">0218713262 | 083873375529</td>
        <td >07 Februari 2016 13:15:33</td>
        <td align="center">Pending</td>
    </tr>
<?php $x++; } ?>
    </table>
    <br />
<?php $i++; } ?>