error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
date_default_timezone_set('Europe/Moscow');
require_once('settings.php');
$sql='SELECT claim, total_price, dt_added, dt_viewed, status_ticket, ticket_canceled, title, data FROM ticket_system, cms_module_feusers_users, cms_module_feusers_properties
WHERE (ticket_system.userid=cms_module_feusers_users.id) AND (cms_module_feusers_users.id=cms_module_feusers_properties.userid) AND (cms_module_feusers_properties.title="department") AND (status_ticket="approved")
ORDER BY dt_added DESC';
//echo $sql."<br />";
$result=mysql_query($sql, $con);
if(!$result){ echo mysql_error(); }
$mas[]=array('data'=>'Отдел', 'claim'=>'Заявка', 'price'=>'Общая стоимость');
while ($row=mysql_fetch_array($result)){
$mas[]=array('data'=>$row['data'], 'claim'=>trim(str_replace('<br />',chr(10),$row['claim'])), 'price'=>$row['total_price']);
}
include('PHPExcel.php');
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
//$active_sheet = $objPHPExcel->getActiveSheet();
$objPHPExcel->getProperties()->setCreator("Admin")
->setLastModifiedBy("Admin")
->setTitle("Заявки")
->setSubject("Заявки")
->setDescription("Заявки на покупку")
->setKeywords("Заявки")
->setCategory("Заявки");
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')
->setSize(10);
$row_start=0;
$i=1;
foreach($mas as $value){
$row_next = $row_start+$i;
$objPHPExcel->getActiveSheet()->setCellValue('A'.$row_next, $value['data'])
->setCellValue('B'.$row_next, $value['claim'])
->setCellValue('C'.$row_next, $value['price']);
$i++;
}
$objPHPExcel->getActiveSheet()->setTitle('Заявки');
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true);
$objPHPExcel->setActiveSheetIndex(0);
include("PHPExcel/Writer/Excel5.php");
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="report.xls"');
header('Cache-Control: max-age=0');
$objWriter->save('php://output');
В итоге, в файле вот такое:
Если сохранять в папку, то все нормально. Header'ы вроде правильно успильзую... В чем причина???
Версия PHPExcel 1.7.9
Версия PHP 5.4.9-4 ubuntu 2.1