Generate PDF using TCPDF on ajax call
Ok this script will save the file and also display in the browser
the trick is in using the output method with the 'F' or 'I':
$pdf->Output("your path", 'F'); //save pdf$pdf->Output('file.pdf', 'I'); // show pdf
CODE
<?phpclass PDF extends TCPDF { public function Header (){ $this->SetFont('dejavusans', '', 14); $title = utf8_encode('title'); $subtitle = utf8_encode('sub title'); $this->SetHeaderMargin(40); $this->Line(15,23,405,23); } public function Footer() { $this->SetFont('dejavusans', '', 8); $this-> Cell (0, 5, 'Pag '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(), 0, false, 'R', 0, '', 0, false, 'T', 'M'); } public static function makeHTML ($json){ $html = '<table border="0.5" cellspacing="0" cellpadding="4"> <tr> <th bgcolor="#DAB926" style="width:3%; text-align:left"><strong>you th</strong></th> </tr>'; for ($i=0; $i<count($json); $i++) { $a= $i+1; $html .= '<tr> <td style="width:15%; text-align:left">'.$json[$i]->Name.'</td> </tr>'; } $html .= '</table>'; return $html; } }function printReport ($json ){ set_time_limit(0); $pdf = new PDF("L", PDF_UNIT, "A3",true, 'UTF-8', false); $pdf->SetMargins (15, 27, 15, true); $pdf->SetFont('dejavusans', '', 8); $pdf->SetAutoPageBreak(TRUE,50); $pdf->AddPage(); //create html $html = $pdf->makeHTML($json); $pdf->writeHTML($html, false, false, false, false, ''); if (!file_exists("your path")) mkdir("your path"); $pdf->Output("your path", 'F'); //save pdf $pdf->Output('file.pdf', 'I'); // show pdf return true;}$json = json_decode("your json");printReport($json);?>