[MPDF] สร้างใบรับรอง เกียรติบัตร วุฒิบัตร โดยดึงข้อมูลจากฐานข้อมูล

การสร้างไฟล์ PDF โดยดึงข้อมูลจากฐานข้อมูลเพื่อสร้างใบรับรอง เกียรติบัตร วุฒิบัตรหรืออื่นๆนั้น  ในที่นี้ผมเลือกใช้ ไลเบอลารี่ที่ชื่อว่า mPDF Version 7.x สามารถดาวโหลดหรือดูข้อมูลเพิ่มเติมได้ที่ https://mpdf.github.io/

การติดตั้งผมเลือกติดตั้งโดยใช้ composer
$ composer require mpdf/mpdf

 ดึงข้อมูลจากฐานข้อมูลโดยใช้ php pdo  สามารถดูเพิ่มเติมได้ที่ https://nakomah.com/article/view/php-dataobject-syntax

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
ob_start();
session_start(); //เรื่มต้น session
 
$db_name = "database_name"; //ชื่อฐานข้อมูล
$db_host = "localhost";
$db_user = "root"; //ชื่อuser
$db_pass = "1234@#+"; //ชื่อรหัสผ่าน
 
try {
   $db_con = new PDO( "mysql:host={$db_host};dbname={$db_name}", $db_user, $db_pass );
   $db_con->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
   $db_con->exec( "set names utf8" );
} catch ( PDOException $e ) {
   echo $e->getMessage();
}
 
// โหลด Liblary mPDF
$mpdf = new \Mpdf\Mpdf( [
   'format'            => 'A4',
   'mode'              => 'utf-8',
   'default_font'      => 'thiasarabun',
   'default_font_size' => '15',
   'tempDir'           => '/tmp',
] );
 
$mpdf->SetImportUse();
 
// โหลดไฟล์ pdf ที่เป็นแม่แบบเข้ามา
$mpdf->SetDocTemplate( 'certificates/thai.pdf', true );
 
//  ดึงค่าจากฐานข้อมูล
$stmt = $db_con->prepare( "SELECT * FROM students WHERE id = :id " );
$stmt->bindParam( ':id', $_GET["id"] );
$stmt->execute();
$row = $stmt->fetch( PDO::FETCH_ASSOC );
 
$mpdf->AddPage();
$html = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry.';
$stylesheet = file_get_contents( 'pdf.css' ); // external css $mpdf->WriteHTML( $stylesheet, 1 );
$mpdf->WriteHTML( $html, 2 );
$mpdf->SetTitle( 'EXP#' . time() );
$mpdf->Output( 'EXP#' . time() . '.pdf', 'I' );
 
ตัวอย่าง
086-2887987
itopcybersoft@gmail.com
Line Official
Facebook Messenger
Twitter