public function getReport($id_report) { $report = end($this->uri->segments); $this->setColNames($id_report); $this->params['id_report'] = $id_report; $this->params['sidx'] = $this->sortColNames; $this->params['colNames'] = $this->colNames; $this->params['colModels'] = $this->colModels; if ($report == 'prev') { $this->template->write_view('content', 'custom_report_query/custom_report_query_preview', $this->params, TRUE); $this->template->render(); // render template } else { if ($report == 'excel') { $nColumn = $this->uri->segment(4); $segment = 5; $listfield = array(); for ($i = 1; $i < $nColumn; $i++) { $listfield[] = str_replace("%20", " ", $this->uri->segment($segment)); $segment++; } $sName = $this->uri->segment($segment); $segment++; $sOrder = $this->uri->segment($segment); $rows = $this->custom_report_query_model->get_datas($id_report); $result = $this->custom_report_query_model->get_report($id_report, $sName, $sOrder)->result_array(); $oldIncludePath = get_include_path(); set_include_path(APPPATH . 'libraries/PHPExcel'); include_once 'PHPExcel.php'; include_once 'PHPExcel/Writer/Excel2007.php'; include_once 'PHPExcel/IOFactory.php'; if ($report == 'excel') { $ext = 'xls'; $header = 'vnd.ms-excel'; $obj = 'Excel5'; $render = false; } else { $rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; $rendererLibrary = 'tcPDF5.9'; $rendererLibraryPath = APPPATH . 'libraries/tcpdf'; $ext = 'pdf'; $header = 'pdf'; $obj = 'PDF'; $render = true; } $objPHPExcel = new PHPExcel(); $objPHPExcel->getProperties()->setTitle("title")->setDescription("description"); // Assign cell values $objPHPExcel->setActiveSheetIndex(0); $sheet = $objPHPExcel->getActiveSheet(); $sheet->getDefaultStyle()->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); $styleArray = array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN))); $sheet->setShowGridlines(true); foreach ($rows as $row) { $row1 = $row['report_name']; $row2 = $row['req_by']; $row3 = date('d-m-Y'); } $sheet->getRowDimension('1')->setRowHeight(10); $sheet->setCellValue('A1', $row1); $sheet->setCellValue('A2', $row2); $sheet->setCellValue('A3', $row3); $char = 65; $i = 0; foreach ($listfield as $fields) { $sheet->setCellValue(chr($char) . '5', $fields); ${'length' . $i} = strlen($fields); $char++; $i++; } $char = 65; if ($report == 'excel') { for ($j = 0; $j < $i; $j++) { $sheet->getColumnDimension(chr($char))->setAutoSize(true); $char++; } } $counter = 6; foreach ($result as $row) { $char = 65; if ($counter == 6 && $report == 'pdf') { $charX = $char; for ($j = 0; $j < $i; $j++) { if (${'length' . $j} > strlen($row[$listfield[$j]])) { $sheet->getColumnDimension(chr($charX))->setWidth(${'length' . $j} + 4); } else { $sheet->getColumnDimension(chr($charX))->setWidth(30); } $charX++; } } for ($j = 0; $j < $i; $j++) { $sheet->setCellValue(chr($char) . $counter, $row[$listfield[$j]]); $char++; } $counter++; } if ($render) { if (!PHPExcel_Settings::setPdfRenderer($rendererName, $rendererLibraryPath)) { die('NOTICE: Please set the $rendererName and $rendererLibraryPath values' . '<br />' . 'at the top of this script as appropriate for your directory structure'); } } $filename = $row1 . "-" . date('d/m/Y H:i:s') . '.' . $ext . ""; // Redirect output to a client’s web browser header('Content-Type: application/' . $header); header('Content-Disposition: attachment;filename="' . $filename . '"'); header('Cache-Control: max-age=0'); // Save it as a file $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $obj); $objWriter->save('php://output'); set_include_path($oldIncludePath); } else { if ($report == 'pdf') { $this->load->library('fpdf'); $nColumn = $this->uri->segment(4); $segment = 5; $listfield = array(); for ($i = 1; $i < $nColumn; $i++) { $listfield[] = str_replace("%20", " ", $this->uri->segment($segment)); $segment++; } $sName = $this->uri->segment($segment); $segment++; $sOrder = $this->uri->segment($segment); $rows = $this->custom_report_query_model->get_datas($id_report); $result = $this->custom_report_query_model->get_report($id_report, $sName, $sOrder)->result_array(); foreach ($rows as $row) { $row1 = $row['report_name']; $row2 = $row['req_by']; $row3 = date('d-m-Y'); } $html = ''; $html .= '<table> <tr> <td>Nama Laporan</td> <td>:</td> <td>' . $row1 . '</td> </tr> <tr> <td>Request By</td> <td>:</td> <td>' . $row2 . '</td> </tr> <tr> <td>Tanggal</td> <td>:</td> <td>' . $row3 . '</td> </tr> </table>'; $row1 . $row2 . $row3; $html .= '<table border="1"> <tr>'; $char = 65; $i = 0; foreach ($listfield as $fields) { $html .= '<td><strong>' . $fields . '</strong></td>'; $char++; $i++; } $html .= '</tr>'; foreach ($result as $row) { $char = 65; $html .= '<tr>'; for ($j = 0; $j < $i; $j++) { $html .= '<td>' . $row[$listfield[$j]] . '</td>'; $char++; } $html .= '</tr>'; } $html .= ' </table>'; $filename = $row1 . "-" . date('d/m/Y H:i:s') . '.pdf'; ini_set('memory_limit', '-1'); require_once APPPATH . '/libraries/pdftable/pdftable.inc.php'; $p = new PDFTable(); $p->AddPage(); $p->setfont('times', '', 10); $p->htmltable($html); $p->output($filename, 'I'); } } } }
// http://www.gnu.org/copyleft/gpl.html // // // /////////////////////////////////////////////////////////////////////////// require '../../../functions/globales.php'; require '../include/rutas.php'; require '../functions/main.php'; require '../struct/login2.php'; require '../functions/doc_functions.php'; if ($_POST['pdf']) { require FPDF_PDF_RUTA . 'lib/pdftable.inc.php'; $p = new PDFTable('P'); $p->SetMargins(3, 43, 0); $p->SetTitle(date("d-m-Y") . "_revision_direccion"); $p->SetFillColor(255, 255, 255); $p->SetTextColor(0, 0, 0); $p->SetDrawColor(0, 0, 0); $doc_real = select_normal("Select * from kz_tec_doc_documentos_reales where id = " . $_POST['documento_real'] . ""); $doc_real = $doc_real[0]; $p->AddPage('P'); $p->SetMargins(10, 10, 0); $p->setfont('Arial', 'B', 12); $color1 = 'A6A6A6'; $color2 = 'FFFFFF'; $tit = "bgcolor=#{$color1} color=#{$color2} align=center valign=middle style=bold height=8"; $nor = "align=center height=5 valign=middle"; $p->cell(0, 0, $doc_real['titulo'], 0, 0, 'C'); $p->ln(15); $p->setfont('Arial', '', 10); $p->MultiCell(188, 5, $doc_real['contenido'], 0, 'J'); $p->output(); }
<?php $table1 = "\r\n<table border=1 align=center>\r\n <tr> \r\n <td rowspan=2 valign=middle border=0>rowspan=2, valign=middle</td>\r\n <td>Normal</td>\r\n <td>Normal</td>\r\n <td>Normal</td>\r\n <td colspan=2 rowspan=2 valign=bottom bgcolor=#FF00FF>colspan=2<br>rowspan=2<br>valign=bottom</td>\r\n </tr>\r\n <tr> \r\n <td height=15>Normal</td>\r\n <td rowspan=2 align=right bgcolor=#aaaaaa border=0>rowspan=2</td>\r\n <td border=0>border=0</td>\r\n </tr>\r\n <tr> \r\n <td>Normal</td>\r\n <td>Normal</td>\r\n <td>Normal</td>\r\n <td rowspan=3 valign=top bgcolor=#CC3366>rowspan=3</td>\r\n <td>Normal</td>\r\n </tr>\r\n <tr bgcolor=#cccccc> \r\n <td>Normal</td>\r\n <td colspan=3 align=center>align center, colspan=3</td>\r\n <td>Normal</td>\r\n </tr>\r\n <tr> \r\n <td align=right valign=bottom>align=right<br>valign=bottom</td>\r\n <td>Normal</td>\r\n <td> </td>\r\n <td>Normal</td>\r\n <td height=20>height=20</td>\r\n </tr>\r\n</table>\r\n"; define('FPDF_FONTPATH', 'font/'); require 'lib/pdftable.inc.php'; $p = new PDFTable(); $p->AddPage(); $p->setfont('times', '', 12); $p->htmltable($table1); $p->output('example.pdf', 'F');
<td border="0">border=0</td> </tr> <tr> <td>Normal</td> <td>Normal</td> <td>Normal</td> <td rowspan="3" valign="top" bgcolor="#CC3366">rowspan=3</td> <td>Normal</td> </tr> <tr bgcolor="#cccccc"> <td>Normal</td> <td colspan="3" align="center">align center, colspan=3</td> <td>Normal</td> </tr> <tr> <td align="right" valign="bottom">align=right<br>valign=bottom</td> <td>Normal</td> <td> </td> <td>Normal</td> <td height="20">height=20</td> </tr> </table> MYTABLE; define('FPDF_FONTPATH', 'font/'); require 'lib/pdftable.inc.php'; $p = new PDFTable(); $p->AddPage(); $p->setfont('times', '', 12); $p->htmltable($html); $p->output('', 'I');