Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > จากโค๊ดจากบทความ ออกรายงาน PDF ท่าจะให้เราเป็นผู้เลือกวันที่ ที่ต้องการออกรายงานควรทำอย่างไรครับ!



 

จากโค๊ดจากบทความ ออกรายงาน PDF ท่าจะให้เราเป็นผู้เลือกวันที่ ที่ต้องการออกรายงานควรทำอย่างไรครับ!

 



Topic : 090736



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP PDF</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["CustomerID"],1);
		$this->Cell(30,6,$eachResult["Name"],1);
		$this->Cell(55,6,$eachResult["Email"],1);
		$this->Cell(25,6,$eachResult["CountryCode"],1,0,'C');
		$this->Cell(20,6,$eachResult["Budget"],1);
		$this->Cell(20,6,$eachResult["Budget"],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["CustomerID"],1);
		$this->Cell(30,6,$eachResult["Name"],1);
		$this->Cell(55,6,$eachResult["Email"],1);
		$this->Cell(25,6,$eachResult["CountryCode"],1,0,'C');
		$this->Cell(25,6,number_format($eachResult["Budget"],2),1,0,'R');
		$this->Cell(25,6,number_format($eachResult["Budget"],2),1,0,'R');
		$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,'C',$fill);
		$this->Cell($w[4],6,number_format($row[4]),'LR',0,'R',$fill);
		$this->Cell($w[5],6,number_format($row[5]),'LR',0,'R',$fill);
		$this->Ln();
		$fill=!$fill;
	}
	$this->Cell(array_sum($w),0,'','T');
}
}

$pdf=new PDF();
//Column titles
$header=array('CustomerID','Name','Email','Country Code','Budget','Used');
//Data loading

//*** Load MySQL Data ***//
$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("ex_pdf");
$strSQL = "SELECT * FROM customer";
$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->Image('logo.png',80,8,33);
$pdf->Ln(35);
$pdf->BasicTable($header,$resultData);

//*** Table 2 ***//
$pdf->AddPage();
$pdf->Image('logo.png',80,8,33);
$pdf->Ln(35);
$pdf->ImprovedTable($header,$resultData);

//*** Table 3 ***//
$pdf->AddPage();
$pdf->Image('logo.png',80,8,33);
$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







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-02-12 02:40:35 By : biggest59 View : 3611 Reply : 15
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
$strSQL = "SELECT * FROM customer WHERE CreateDate  BETWEEN 'StartDate' AND 'EndDate' ";







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 07:10:38 By : mr.win
 


 

No. 2



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.win เมื่อวันที่ 2013-02-12 07:10:38
รายละเอียดของการตอบ ::
ตอนนี้ติดปัญหาที่ว่า ถ้าเราใช้เเต่ชื่อ MyPDF.pdf มันก็จะอ่านเเต่ข้อมูลเดิมตลอด เเต่ในเเฟ้มข้อมูลเก็บตาม WHERE ที่เรากำหนดได้
ถ้าผมจะทำให้มันตั่งชื่อ โดยใช้ textBox เป็นตัวกำหนดชื่อของมัน เเละเวลาการดึงไฟล์ต้องเขียนเเบบไหนครับ



ประวัติการแก้ไข
2013-02-12 15:28:41
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 15:06:56 By : biggest59
 

 

No. 3



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ถ้าคุณ biggest59 ส่งค่า ตัวแปรเข้าไปใน Class fpdf.php ได้ ผมตอบได้เลยว่าทำได้ตามที่ต้องการ.....แต่ผมลองส่งค่า $id ที่อ้างในในการปริ้นท์ เข้าไปมั่ว ๆ ดู แต่ยังผมทำไม่ได้ ....
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 16:07:57 By : apisitp
 


 

No. 4



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 3 เขียนโดย : apisitp เมื่อวันที่ 2013-02-12 16:07:57
รายละเอียดของการตอบ ::
นั่นละครับ ผมก้ลองทำเเบบนั้นเเว้ว เซง พอ Where ข้อมุลใหม่ กลับ Save ไม่ได้ Error เลยทีเดียว
มีทางเดียวที่คิดไว้ พอ Where ข้อมุลตามที่ต้องการได้เเล้ว ให้เก็บข้อมูลไว้ในเครื่องเเล้วให้อัพโหลดเข้า DB เเละก้ลบไฟล์นั้นทิ้งซะ
เม่ือต้องการข้อมูลอันไหนอีก ก็ทำตามเดิม เเต่ยุ่งยามาก



ประวัติการแก้ไข
2013-02-12 16:19:02
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 16:16:30 By : biggest59
 


 

No. 5



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ต้องลอง หรือ รอต่อไป.....เพราะตอนทำที่แรกชื่อไฟล์ผมก็ MyPDF.pdf แต่ก็เปลี่ยนได้แค่ชื่อที่เจาะจง อาจจะมีใครแนะนำการส่งค่าตัวแปร เข้า class
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 16:28:30 By : apisitp
 


 

No. 6



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 5 เขียนโดย : apisitp เมื่อวันที่ 2013-02-12 16:28:30
รายละเอียดของการตอบ ::
โปรเจคใกล้เสร้จก้จะไม่เสร้จกเพราะ อกรายงานนี้เเหละ เศร้าเลยครับพี่!

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 16:36:24 By : biggest59
 


 

No. 7



โพสกระทู้ ( 3,847 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

ผมลองทำดูมันก็ออกปกติน่ะครับ
ลองเอาไปดูหล่ะกัน
** เรียกใช้รูปแบบ Table อันเดียวก็พอ เช่น Basictable, Improvetable, Fancytable เอาซักตัวครับ ตัวเดียวน่ะ
Example Code(PHP)
<html>
<head>
<title>ThaiCreate.Com PHP PDF</title>
</head>
<body>

<?php
require('fpdf/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;
}

    //Better table
    function ImprovedTable($header,$data,$width)
    {
        //Header
        for($i=0;$i<count($header);$i++){
          $this->Cell($width[$i],7,$header[$i],1,0,'C');  
        }            
        $this->Ln();
        //Data

        foreach ($data as $datas) 
        {
            $w=0;
            foreach($datas  as $fill){
               $this->Cell($width[$w],6,$fill,1);
               $w++; 
            }
            $this->Ln();
        }
        //Closure line
        $this->Cell(array_sum($width),0,'','T');
    }

}

$pdf=new PDF();
//Column titles
$header=array('ID','DATE','METER');
//Data loading

//*** Load MySQL Data ***//
$objConnect = mysql_connect("localhost","root","rootpass") or die("Error Connect to Database");
$objDB = mysql_select_db("graph");
$strSQL = "SELECT * FROM tb_tcooling";
$objQuery = mysql_query($strSQL);

$resultData = array();
while($data=mysql_fetch_array($objQuery)){
     $resultData[]=array($data['id'],$data['date'],$data['meter']);
}
  //print_r($resultData);die;
$myHeader = array('ID','DATE','METER');  //  Header
$myWidthFixed = array(20,25,25); //  กำหนดความกว้างให้แต่ละคอลัมภ์
$pdfname = 'HelloPDF.pdf';   //  ชื่อไฟล์ที่ต้องการ
$pdf->SetFont('Arial','',10);


//*** Table 2 ***//
$pdf->AddPage();
$pdf->Image('logo.gif',80,8,33);
$pdf->Ln(35);
$pdf->ImprovedTable($myHeader,$resultData,$myWidthFixed);  // ส่ง header + data + width ไปให้ ImproveTable


$pdf->Output($pdfname,"F");  //  ใส่ชื่อใหม่ตามใจชอบผ่านตัวแปร $pdfname จากด้านบน
?>

PDF Created Click <a href="<?php echo $pdfname;?>">here</a> to Download
</body>
</html>


ตัวอย่างผลลัพธ์ผมน่ะ
pdf


ประวัติการแก้ไข
2013-02-12 18:43:14
2013-02-12 18:45:32
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 18:42:28 By : mangkunzo
 


 

No. 8



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


จาก

$pdfname = 'HelloPDF.pdf';   //  ชื่อไฟล์ที่ต้องการ (แบบนี้ทำได้)


ถ้าเราทำเป็น

$x = $_GET['id']; //สมมุติเป็นการรับค่า id มาแล้วกัน สมมุติ id = 333
$pdfname = '$x.pdf'; //ผมยังไม่ได้ลองวาง ตัวแปร x หลาย ๆ แนว ....


แล้วให้ผลออกมาเป็นชื่อไฟล์ 333.pdf แบบนี้...

เคยทำแบบนี้หรือเปล่าครับ (ต้องลอง)


ประวัติการแก้ไข
2013-02-12 21:11:39
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 21:11:01 By : apisitp
 


 

No. 9



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 8 เขียนโดย : apisitp เมื่อวันที่ 2013-02-12 21:11:01
รายละเอียดของการตอบ ::
มันกลายเป้นชื่อ $x ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 21:40:57 By : biggest59
 


 

No. 10



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 7 เขียนโดย : mangkunzo เมื่อวันที่ 2013-02-12 18:42:28
รายละเอียดของการตอบ ::
เเละถ้าผมอยากได้ รับค่า จาก TextBox ต้องทำไงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 21:41:36 By : biggest59
 


 

No. 11



โพสกระทู้ ( 3,847 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

ก็รับค่าปกติครับ
$pdfname = $_POST['textboxname'].".pdf";


ประวัติการแก้ไข
2013-02-12 22:03:56
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 22:03:29 By : mangkunzo
 


 

No. 12



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 11 เขียนโดย : mangkunzo เมื่อวันที่ 2013-02-12 22:03:29
รายละเอียดของการตอบ ::
ครับได้เเล้วครับ เเต่ติดปัญหาคคือ มันเข้าไปเก็บได้เเล้ว เเต่เวลา รันเสร็จ มันไม่ยอมโชว์ขึ้นมาเลยเหมือนอันก่อนครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 22:33:46 By : biggest59
 


 

No. 13



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 11 เขียนโดย : mangkunzo เมื่อวันที่ 2013-02-12 22:03:29
รายละเอียดของการตอบ ::
ที่ผมทำรับค่าจาก หน้า index มานะ
นี้โคีดนะครับCode (PHP)
$pdf=new PDF();
//Column titles
$header=array('CustomerID','Name','Email','Country Code','Budget','Used');
//Data loading

//*** Load MySQL Data ***//
$txtname = $_POST["txtname"].".pdf";

$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
$objDB = mysql_select_db("ex_pdf");
$strSQL = "SELECT * FROM customer";
$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 3 ***//
$pdf->AddPage();
$pdf->Image('logo.png',80,8,33);
$pdf->Ln(35);
$pdf->FancyTable($header,$resultData);

$pdf->Output("MyPDF/$txtname","F");
?>

PDF Created Click <a href="<?php echo MyPDF/$txtname;?>">here</a> to Download


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 22:37:03 By : biggest59
 


 

No. 14



โพสกระทู้ ( 3,847 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Twitter Facebook

อะไรไม่โชว์ครับ


ประวัติการแก้ไข
2013-02-12 22:42:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 22:42:14 By : mangkunzo
 


 

No. 15



โพสกระทู้ ( 331 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 14 เขียนโดย : mangkunzo เมื่อวันที่ 2013-02-12 22:42:14
รายละเอียดของการตอบ ::
ทำได้เเล้วครับพี่ ขอบคุณมากๆครับ ! อยากรู้ว่ามันสามารถดึงข้อมูลมาโชวืบนเว็บได้ไหมครับโดยที่มันไม่ได้อยุ่ใน DB



ประวัติการแก้ไข
2013-02-13 00:11:02
2013-02-13 00:56:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-12 22:46:16 By : biggest59
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : จากโค๊ดจากบทความ ออกรายงาน PDF ท่าจะให้เราเป็นผู้เลือกวันที่ ที่ต้องการออกรายงานควรทำอย่างไรครับ!
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่