Fetch Data from Mysql in php on pdf using fpdf

8.7k views Asked by At

I am new in php, and using first time FPDF for generating pdf file.
I have a database with name test123 and table with named form having four fields id with data type int, Name, Address and Designation with data type Varchar, and the last one is Text with data type longblob.

Data inserted in these fields by a form having textarea.

Problem is that when I want to generate pdf file and import data from database data type blob is not converted. Here is screenshot of my problem just click on the link http://postimg.org/image/qtid90tqb/

Below is the code I am using:

<?php 
require('fpdf/fpdf.php');

//create a FPDF object
$pdf=new FPDF(); 

//set font for the entire document
$pdf->SetFont('Helvetica','B',20);
//$pdf->SetTextColor(50,60,100);

//set up a page
$pdf->AddPage('P'); 
$pdf->SetDisplayMode('default');

//insert an image and make it a link
$pdf->Image('image/logo.gif',100,10,20,0);

//display the title with a border around it
$pdf->SetXY(40,30);
$pdf->SetDrawColor(50,60,100);
$pdf->Write(10,'The Pakistan Credit Rating Agency Limited',0,'C',0);
$pdf->Line(10,40,200,40);

//Set x and y position for the main text, reduce font size and write content
$pdf->SetXY (20,45);
$pdf->SetFontSize(10);
$pdf->SetTextColor(30,30,100);
$pdf->Write(5,'NL FYI s-l4l (PSO-040515)');

$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password=""; // Mysql password 
$db_name="test123"; // Database name 
$tbl_name="form"; // Table name

$con = mysqli_connect('localhost','root','');
mysqli_select_db($con,"test123");

$sql="SELECT * FROM form WHERE id = '30'";
$result = mysqli_query($con,$sql);
while($rows= (mysqli_fetch_array($result,MYSQLI_ASSOC)))
{           
    $name = $rows['Name'];
    $address = $rows['Address'];
    $class = $rows['Designation'];
    $phone = $rows['Text'];

    $pdf->SetXY (20,60);
    $pdf->SetFontSize(12);
    $pdf->SetTextColor(0,0,0);
    $pdf->Write(7,$name);
    $pdf->SetXY (20,65);
    $pdf->Write(7,$address);
    $pdf->SetXY (20,70);
    $pdf->Write(7,$class);
    $pdf->SetXY (20,90);
    $pdf->Write(7,$phone);
    $pdf->Ln(); 
}

//Output the document
$pdf->Output('test.pdf','I');     
?>
3

There are 3 answers

0
rahman_akon18 On
$s = oci_parse($conn,"SELECT * FROM form WHERE id = '30'");
oci_execute( $s);
$result = array();
while ($row = oci_fetch_array( $s, OCI_ASSOC+OCI_RETURN_NULLS)) {   
$result[] = $row;   }

$pdf->Cell(20,5,'Name',1,0,'C',0);
$pdf->Cell(20,5,$result[]['Name'],1,0,'C',0);
0
JoygiveKalai On
$pdf->Output();     
header("Content-Disposition: attachment; filename=filename.pdf");
1
sandeep agarwal On
<?php
require("DB.php");
$db_handle = new DBController();
$result = $db_handle->runQuery("SELECT * FROM student");
$header = $db_handle->runQuery("SELECT `COLUMN_NAME` FROM `INFORMATION_SCHEMA`.`COLUMNS` 
WHERE `TABLE_SCHEMA`='blog' 
    AND `TABLE_NAME`='student'");

require('fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);      
foreach($header as $heading) {
    foreach($heading as $column_heading)
        $pdf->Cell(90,12,$column_heading,1);
}
foreach($result as $row) {
    $pdf->SetFont('Arial','',12);   
    $pdf->Ln();
    foreach($row as $column)
        $pdf->Cell(90,12,$column,1);
}
$pdf->Output();
?>