ทำใบเสร็จค่าเช่าจาก PHP เป็น PDF มือใหม่หัดทำครับผม
ตอนนี้เหลือ การออกใบเสร็จค่าเช่าครับผม หน้าตาแบบนี้
กดรูปเครื่องปริ๊นแล้ว ปริ๊นเลยหรือ pdf ดีครับ
อยากทราบว่าทำได้ไหมครับแล้ว ผมไปศึกษาหน้าเว็บ https://www.thaicreate.com/php/php-pdf-mysql-export-pdf.html แล้ว ลองรันดู ปรากฏว่า error ค่าเอาท์พุต มือใหม่ครับผม ^^
หน้านี้ลองเอาผลลัพธ์ของตาราง user โชว์ออกมาก่อน
ดูข้อความด้านขวาสุดเหมือนผมไม่ได้ เอาตัว fpdf.php มาด้วย แต่ผมก็ Import เข้ามาแล้วครับ
Code (PHP)
//Save to local file ตัว error
$f=fopen($name,'wb');
if(!$f)
$this->Error('Unable to create output file: '.$name);
fwrite($f,$this->buffer,strlen($this->buffer));
fclose($f);
break;
Code (PHP)
<html>
<head>
<title>ทดสอบระบบหอพัก</title>
</head>
<body>
<?php
require('fpdf.php');
class PDF extends FPDF
{
//Load data
function LoadData($file)
{
//Read file lines
$lines=file($file);
$data=array();
foreach($lines as $line)
$data[]=explode(';',chop($line));
return $data;
}
//Simple table
function BasicTable($header,$data)
{
//Header
$w=array(30,30,55,25,20,20);
//Header
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],7,$header[$i],1,0,'C');
$this->Ln();
//Data
foreach ($data as $eachResult)
{
$this->Cell(30,6,$eachResult["User_ID"],1);
$this->Cell(30,6,$eachResult["User_Fname"],1);
$this->Cell(55,6,$eachResult["User_Lname"],1);
$this->Cell(25,6,$eachResult["Id_Card"],1);
$this->Cell(20,6,$eachResult["User_Address"],1);
$this->Cell(20,6,$eachResult["User_Moblie"],1);
$this->Ln();
}
}
//Better table
function ImprovedTable($header,$data)
{
//Column widths
$w=array(20,30,55,25,25,25);
//Header
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],7,$header[$i],1,0,'C');
$this->Ln();
//Data
foreach ($data as $eachResult)
{
$this->Cell(20,6,$eachResult["User_ID"],1);
$this->Cell(30,6,$eachResult["User_Fname"],1);
$this->Cell(55,6,$eachResult["User_Lname"],1);
$this->Cell(25,6,$eachResult["Id_Card"],1);
$this->Cell(25,6,$eachResult["User_Address"],1);
$this->Cell(25,6,$eachResult["User_Moblie"],1);
$this->Ln();
}
//Closure line
$this->Cell(array_sum($w),0,'','T');
}
//Colored table
function FancyTable($header,$data)
{
//Colors, line width and bold font
$this->SetFillColor(255,0,0);
$this->SetTextColor(255);
$this->SetDrawColor(128,0,0);
$this->SetLineWidth(.3);
$this->SetFont('','B');
//Header
$w=array(20,30,55,25,25,25);
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],7,$header[$i],1,0,'C',true);
$this->Ln();
//Color and font restoration
$this->SetFillColor(224,235,255);
$this->SetTextColor(0);
$this->SetFont('');
//Data
$fill=false;
foreach($data as $row)
{
$this->Cell($w[0],6,$row[0],'LR',0,'L',$fill);
$this->Cell($w[1],6,$row[1],'LR',0,'L',$fill);
$this->Cell($w[2],6,$row[2],'LR',0,'L',$fill);
$this->Cell($w[3],6,$row[3],'LR',0,'L',$fill);
$this->Cell($w[4],6,$row[4],'LR',0,'L',$fill);
$this->Cell($w[5],6,$row[5],'LR',0,'L',$fill);
$this->Ln();
$fill=!$fill;
}
$this->Cell(array_sum($w),0,'','T');
}
}
$pdf=new PDF();
//Column titles
$header=array('User_ID','User_Fname','User_Lname','Id_Card','User_Address','User_Moblie');
//Data loading
//*** Load MySQL Data ***//
$objConnect = mysql_connect("localhost","root","") or die("Error Connect to Database");
$objDB = mysql_select_db("dormitory");
$strSQL = "SELECT * FROM user";
$objQuery = mysql_query($strSQL);
$resultData = array();
for ($i=0;$i<mysql_num_rows($objQuery);$i++) {
$result = mysql_fetch_array($objQuery);
array_push($resultData,$result);
}
//************************//
$pdf->SetFont('Arial','',10);
//*** Table 1 ***//
$pdf->AddPage();
$pdf->Ln(35);
$pdf->BasicTable($header,$resultData);
//*** Table 2 ***//
$pdf->AddPage();
$pdf->Ln(35);
$pdf->ImprovedTable($header,$resultData);
//*** Table 3 ***//
$pdf->AddPage();
$pdf->Ln(35);
$pdf->FancyTable($header,$resultData);
$pdf->Output("MyPDF/MyPDF.pdf","F"); //ตรงจุดนี้
?>
PDF Created Click <a href="./MyPDF/MyPDF.pdf">here</a> to Download
</body>
</html>
Tag : PHP, MySQL, JavaScript, Windows
ประวัติการแก้ไข 2012-09-08 04:56:54 2012-09-08 04:57:06 2012-09-08 05:56:22 2012-09-08 06:03:52 2012-09-08 06:08:15
Date :
2012-09-08 04:56:11
By :
veeitdata5
View :
16029
Reply :
5
Chrome กับ หมาไฟ มีคำสั่งปริ้นเป็น PDF อยู่แล้วน่ะ
ไม่ต้องใช้โค้ดก็ได้นะ แล้วก็บางบริษัทหรือองค์กรนะ เค้าก็ใช้โปรแกรมที่เป็นฟรีแวร์ที่ทำให้สามารถพิมพ์ออกมาเป็น PDF น่ะ
ส่วนของคุณที่เออเรอน่ะ มันหาไฟล์ไม่เจอน่ะ ลองดูที่อยู่ไฟล์ใหม่ดูน่ะ
Date :
2012-09-08 06:18:37
By :
บังเอิญผ่านมาเห็น
จากบทความที่คุณอ่าน คุณลองดาวน์โหลดไปรันดูครับ
Date :
2012-09-08 07:25:08
By :
mr.win
เดียวลองทดสอบดูอีกครั้งครับ
Date :
2012-09-09 02:22:00
By :
veeitdata5
Code (PHP)
$pdf->Output("MyPDF/MyPDF.pdf","F"); //ตรงจุดนี้ แก้เป็นแค่ mypdf.pdf เฉยๆ
?>
PDF Created Click <a href="./MyPDF/MyPDF.pdf">here</a> to Download //ตรงนี้ด้วยค่ะ
Date :
2012-10-18 21:56:56
By :
jan
อยากได้ระบบนี้อ่าคับ ผมขอยืมไปทำโปรเจคหน่อย
Date :
2016-11-27 09:09:42
By :
มอส มอส
Load balance : Server 01