Senin, 04 April 2016

Print To PDF

Assalamualaikum Wr. Wb.

Hari ini saya membuat fungsi html2pdf untuk mencetak suatu data seseorang dan hasilnya bisa langsung di di cetak di kertas.

Tutorial

1. Download html2pdf.rar kemudian extrak di file direktori var/www/html/ (nama folder anda) contohnya sebagai berikut :

a. Masuk keterminal ketikan.
    #sudo su
    #password
    # caja
  
b. Klik kanan pada file html2pdf.rar pilih extrack here hingga muncul folder
    seperti ini.


2. Buat database di php MyAdmin dengan nama print dan nama tabelnya data seperti gambar di bawah ini.

a. Klik create untuk membuat database.



b. Buat tabelnya yang isinya seperti ini.




c. Masuk keterminal ketikan untuk mengisi tabel tersebut.
    #sudo su
    #password
    #mysql -u root -p
    # show databases (untuk melihat database yang kita buat tadi)
    #desc data (untuk melihat isi tabel)
    # insert into (nama_tabel) values (); (untuk mengisi data dalam tabel)


d. Mari kita lihat di php MyAdmin isi tabel sudah masuk atau belum, ternyata
    tabelnya sudah terisi data.



3. Sekarang mari kita buat file php nya contoh seperti di bawah ini.

a. Buat file koneksinya terlebih dahulu dengan nama dbconfig.php dan simpan di
    file direktori var/www/html/print silahkan copy saja script di bawah ini.

 <?php
$host = "localhost";
$user = "root";
$password = "mustafid123";
$datbase = "print";
mysql_connect($host,$user,$password);
mysql_select_db($datbase);
?>

b. Buat file index.php dan simpan di file direktori var/www/html/print silahkan
    copy saja script di bawah ini.

    <?php
    include_once("dbconfig.php");
    
    //buat query untuk menampilkan berita
    $query = mysql_query("SELECT * FROM data ORDER BY nama");
    
    ?>
    <style>
    body{
        background-image: url('images.jpeg');

    }
     table{
      border:silver 1px solid;
      margin-top: 100px;
     }
     table td{
      border-bottom:silver 4px solid;
      border-right:silver 4px solid;
      padding:0 0 0 5px;
     }
    </style>
    <center><table cellpadding="0" cellspacing="0" style="font-family:Verdana, Geneva, sans-serif">
      <!--DWLayoutTable-->
      <tr bgcolor='gray'>
        <td height="25" colspan="7" align="center"><strong>DAFTAR DATA SISWA</strong></td>
      </tr>
      <tr bgcolor='gray'>
        <td height="25" align="center" style="background-color:silver"><strong>NO</strong></td>
        <td width="100" align="center" style="background-color:silver"><strong>NIS</strong></td>
        <td width="250" align="center" style="background-color:silver"><strong>NAMA</strong></td>
        <td width="150" align="center" style="background-color:silver"><strong>ALAMAT</strong></td>
        <td width="150" align="center" style="background-color:silver"><strong>TGL LAHIR</strong></td>
        <td width="150" align="center" style="background-color:silver"><strong>TELEPON</strong></td>
         <td width="100" align="center" style="background-color:silver"><strong>ANGKATAN</strong></td>
      </tr></center>
    <?php
    $nomor = 1;
    while($data = mysql_fetch_array($query)){
    $kode = $data['nis']; // ambil nis siswa (unik)
    ?>
      <tr bgcolor='white'>
        <td width="38" height="25" valign="middle"><?php echo $nomor; ?></td>
        <td valign="middle"><?php echo $data['nis']; ?></td>
        <td valign="middle"><?php echo $data['nama']; ?></td>
        <td valign="middle"><?php echo $data['alamat']; ?></td>
        <td valign="middle"><?php echo $data['tgl_lahir']; ?></td>
        <td valign="middle"><?php echo $data['telp']; ?></td>
        <td valign="middle"><?php echo $data['angkatan']; ?></td>
        <td valign="middle">
     <!-- BUAT LINK POP UP KE HALAMAN PDF KONVERTER SEPERTI PADA CONTOH BERIKUT -->
     <a href="javascript:void(0);"
        onclick="window.open('report.php?kode=<?php echo $kode; ?>','nama_window_pop_up','size=800,height=800,scrollbars=yes,resizeable=no')">PDF</a>
     </td>
       </tr>
    <?php
    $nomor++;
    }
    ?>
    </table>

c. Buat file report.php dan simpan di file direktori var/www/html/print silahkan
    copy saja script di bawah ini.

 <?php
session_start();
ob_start();
include_once("dbconfig.php"); //buat koneksi ke database
$kode   = $_GET['kode']; //kode berita yang akan dikonvert
$query  = mysql_query("SELECT * FROM data WHERE nis='".$kode."'");
$data   = mysql_fetch_array($query);
 
?>
<html xmlns="http://www.w3.org/1999/xhtml"> <!-- Bagian halaman HTML yang akan konvert -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?php echo $data['nis']; ?></title>
</head>
<body>
<?php
echo "<h1>".$data['nis']."</h1>"; 
echo '<table border="0">
  <tr>
    <td width="100">NAMA</td>
    <td width="10">:</td>
    <td width="250">'.$data['nama'].'</td>
  </tr>
  <tr>
    <td>TGL LAHIR</td>
    <td>:</td>
    <td>'.$data['tgl_lahir'].'</td>
  </tr>
  <tr>
    <td>ALAMAT</td>
    <td>:</td>
    <td>'.$data['alamat'].'</td>
  </tr>
   <tr>
    <td>TELEPON</td>
    <td>:</td>
    <td>'.$data['telp'].'</td>
  </tr>
  <tr>
    <td>ANGKATAN</td>
    <td>:</td>
    <td>'.$data['angkatan'].'</td>
  </tr>
</table>';
 
echo "<p>data yang tertera di atas adalah mahasiswa universitas ini.</p>";
echo "<p align='right'>MALANG, ".date('d-m-Y')."
<img src='ttd.png' width='120'>
( Febri Imam )</p>";
?>
</body>
</html><!-- Akhir halaman HTML yang akan di konvert -->
<?php
$filename="mhs-".$kode.".pdf"; //ubah untuk menentukan nama file pdf yang dihasilkan nantinya
//==========================================================================================================
//Copy dan paste langsung script dibawah ini,untuk mengetahui lebih jelas tentang fungsinya silahkan baca-baca tutorial tentang HTML2PDF
//==========================================================================================================
$content = ob_get_clean();
$content = '<page style="font-family: freeserif">'.nl2br($content).'</page>';
 require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
 try
 {
  $html2pdf = new HTML2PDF('P','A4','en', false, 'ISO-8859-15',array(30, 0, 20, 0));
  $html2pdf->setDefaultFont('Arial');
  $html2pdf->writeHTML($content, isset($_GET['vuehtml']));
  $html2pdf->Output($filename);
 }
 catch(HTML2PDF_exception $e) { echo $e; }
?>

4. Kemudian kita coba hasilnya dengan cara tuliskan di web browser
    localhost/print/

a. Hasilnya seperti ini.


b. Bila di klik pdf akan mencetak data tersebut contohnya saya klik no 1 yang
    bernama achmad dan hasilnya seperti ini.


c. Hasilnya akan berbentuk pdf.



d. Bila tanda tangan tidak muncul itu karena anda harus menyisipkan gambar
    tanda tangan anda di file direktori var/www/html/print dengan nama
    gambarnya ttd.png contoh seperti ini.




Info : Bila data tabel anda tidak muncul kemungkinan anda harus menyesuaikan dengan nama database dan nama tabel anda pada script php di atas tadi.

Sekian dari saya semoga postingan ini bermanfaat bagi anda semuanya.

Wassalamualaikum Wr. Wb.

0 komentar:

Posting Komentar