проблемы с header

e_Katerina

Новичок
PHP:
//отправка файла на скачивание
header("Content-Type:application/vnd.ms-excel"); //150
header("Content-Disposition:attachment;filename='Cartridge.xls'"); //151
Ошибки:
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\ecsp.php:1) in Z:\home\localhost\www\ecsp.php on line 150

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\ecsp.php:1) in Z:\home\localhost\www\ecsp.php on line 151
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
и что говорит нам гугл?
 

e_Katerina

Новичок
и что говорит нам гугл?
дело в том, что никаких ранее заголовков серверу не отправляется, пробелов или пустых строк перед php нет
вот полный код страницы экспорта в Excel

PHP:
require_once 'Classes/PHPExcel.php';
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$active_sheet = $objPHPExcel->getActiveSheet();

//Ориентация страницы и  размер листа
$active_sheet->getPageSetup()
->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT);
$active_sheet->getPageSetup()
->SetPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
//Поля документа      
$active_sheet->getPageMargins()->setTop(1);
$active_sheet->getPageMargins()->setRight(0.75);
$active_sheet->getPageMargins()->setLeft(0.75);
$active_sheet->getPageMargins()->setBottom(1);
//Название листа
$active_sheet->setTitle("Прайс-лист"); 
//Шапа
$active_sheet->getHeaderFooter()->setOddHeader("&Картриджи");
$active_sheet->getHeaderFooter()->setOddFooter('&L&B'.$active_sheet->getTitle().'&RСтраница &P из &N');
//Настройки шрифта
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');
$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);
//Задаем ширину столбцов
$active_sheet->getColumnDimension('A')->setWidth(20);
$active_sheet->getColumnDimension('B')->setWidth(20);
$active_sheet->getColumnDimension('C')->setWidth(20);
$active_sheet->getColumnDimension('D')->setWidth(20);
$active_sheet->getColumnDimension('E')->setWidth(20);
$active_sheet->getColumnDimension('F')->setWidth(20);

//Вносим данные
$active_sheet->setCellValue('A1','Наименование');
$active_sheet->setCellValue('B1','Дата');
$active_sheet->setCellValue('C1','Состояние');
$active_sheet->setCellValue('D1','Отдел');
$active_sheet->setCellValue('E1','Тип');
$active_sheet->setCellValue('F1','Количество');

//Заполнение данными
//В цикле проходимся по элементам массива и выводим все в соответствующие ячейки
$row_start = 2;
$i = 0;
include ('conect.php');
$res=mysql_query($filtrs);
$names = array();
    while($row = mysql_fetch_assoc($res))
      {
          $names[] = $row;
      }
foreach($names as $item){
    $row_next = $row_start + $i;
$active_sheet->setCellValue('A'.$row_next,$item['name_cartridge']);
$active_sheet->setCellValue('B'.$row_next,$item['date']);
$active_sheet->setCellValue('C'.$row_next,$item['condition']);
$active_sheet->setCellValue('D'.$row_next,$item['department']);
$active_sheet->setCellValue('E'.$row_next,$item['type']);
$active_sheet->setCellValue('F'.$row_next,$item['count']);
$i++;
};

//Стили для верхней надписи строка 1
$style_header = array(
//Шрифт
'font'=>array(
'bold' => true,
'name' => 'Times New Roman',
'size' => 12
),
//Выравнивание
'alignment' => array(
'horizontal' => PHPExcel_STYLE_ALIGNMENT::HORIZONTAL_CENTER,
'vertical' => PHPExcel_STYLE_ALIGNMENT::VERTICAL_CENTER,
),
//Заполнение цветом
'fill' => array(
'type' => PHPExcel_STYLE_FILL::FILL_SOLID,
'color'=>array(
'rgb' => 'CFCFCF'
)
)
);
$active_sheet->getStyle('A1:F1')->applyFromArray($style_header);

//стили для данных в таблице прайс-листа
$style_price = array(
'alignment' => array(
'horizontal' => PHPExcel_STYLE_ALIGNMENT::HORIZONTAL_LEFT,
)
);
$active_sheet->getStyle('A7:D'.($i+6))->applyFromArray($style_price);


//отправка файла на скачивание
header("Content-Type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename='Cartridge.xls'");
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit();
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Ну вот не отправляется, а в итоге таки отправилось, ищи ошибки, как? Это описано в дебаге на phpfaq.ru
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Там и строчки указаны...
 
Сверху