Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- mysql_query("SET NAMES 'utf8'");
- mysql_query("SET CHARACTER SET 'utf8'");
- mysql_query("SET SESSION collation_connection = 'utf8_general_ci'");
- $sql="SELECT * FROM `ORDERS`";
- $hQ=mysql_unbuffered_query($sql);
- if($hQ){
- //экспорт
- require_once $_SERVER['DOCUMENT_ROOT']."/PHPExcel/Classes/PHPExcel/IOFactory.php";
- require_once $_SERVER['DOCUMENT_ROOT']."/PHPExcel/Classes/PHPExcel.php";
- #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- $objPHPExcel = new PHPExcel();
- $objPHPExcel->setActiveSheetIndex(); //set first sheet as active
- $objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
- $objPHPExcel->getActiveSheet()
- ->getPageSetup()
- ->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
- //поля
- $objPHPExcel->getActiveSheet()->getPageMargins()->setTop(0.39);
- $objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0.39);
- $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0.39);
- $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(0.39);
- $sheet=$objPHPExcel->getActiveSheet();
- $rowPointer=1;
- //шапка
- $columnPointer=0;
- $title=array(
- 'ID','Сумма заказа'
- );
- foreach($title as $v){
- $sheet->setCellValueExplicitByColumnAndRow($columnPointer++, $rowPointer, $v);
- }
- $sheet->getStyle("A1:P1")->applyFromArray(
- array(
- 'borders' => array(
- 'allborders' => array(
- 'style' => PHPExcel_Style_Border::BORDER_THIN,
- 'color' => array('rgb' => '000000')
- )
- ),
- 'fill' => array(
- 'type' => PHPExcel_Style_Fill::FILL_SOLID,
- 'color' => array('rgb' => 'ffcc80')
- )
- )
- );
- $rowPointer++;
- while($row=mysql_fetch_assoc($hQ)){
- $columnPointer=0;
- //id
- $sheet->setCellValueExplicitByColumnAndRow($columnPointer++, $rowPointer, $row['ID']);
- //sum
- $sheet->setCellValueExplicitByColumnAndRow($columnPointer++, $rowPointer, $row['PRICESUM']);
- //данные о клиенте
- $sheet->setCellValueExplicitByColumnAndRow($columnPointer++, $rowPointer, htmlspecialchars_decode($client_d->name));
- //данные о заказе
- $r=0;
- $c=$columnPointer;
- foreach($order_d as $v){
- $c=$columnPointer;
- $sheet->setCellValueExplicitByColumnAndRow($c++, $rowPointer+$r, $v->d_brand?$v->d_brand:'--');
- ..
- $r++;
- }
- //обьединённые ячейки
- for($m=0;$m<8;++$m){
- $sheet->getStyleByColumnAndRow($m,$rowPointer)->getAlignment()->
- setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP);
- $sheet->mergeCellsByColumnAndRow($m,$rowPointer, $m,$rowPointer+($r-1));
- }
- //раскрасить
- $sheet->getStyle("A$rowPointer:P".$rowPointer)->applyFromArray(
- array(
- 'borders' => array(
- 'top' => array(
- 'style' => PHPExcel_Style_Border::BORDER_THIN,
- 'color' => array('rgb' => '000000'),
- )
- ),
- )
- );
- $rowPointer+=$r-1;
- $rowPointer++;
- }
- // Redirect output to a client’s web browser (Excel5)
- header('Content-Type: application/vnd.ms-excel');
- header('Content-Disposition: attachment;filename="order.xls"');
- header('Cache-Control: max-age=0');
- $objPHPExcel = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
- $objPHPExcel->save('php://output');
- exit;
- #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement