PHPExcel сохранить файл


Привет всем, у меня есть сайт, и я хочу создать файл excel и сохранить его в своей папке на своем сервере. Я пробовал в этом режиме, но каждый раз прошу меня загрузить его. Я не хочу, чтобы меня просили загрузить, потому что после того, как я должен создать много xls, это отчет, и его не нужно загружать, а только сохранять в папке. Это мой код:

require_once 'inc/PHPExcel.php';

// Create new PHPExcel object
$objPHPExcel = new PHPExcel();

// Set document properties
$objPHPExcel->getProperties()->setCreator("Alessandro Minoccheri")
                             ->setLastModifiedBy("Alessandro Minoccheri")
                             ->setTitle("Office 2007 XLSX Test Document")
                             ->setSubject("Office 2007 XLSX Test Document")
                             ->setDescription("Generazione report inverter")
                             ->setKeywords("office 2007 openxml php")
                             ->setCategory("");


// Add some data
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', 'Hello')
            ->setCellValue('B2', 'world!')
            ->setCellValue('C1', 'Hello')
            ->setCellValue('D2', 'world!');

// Miscellaneous glyphs, UTF-8
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A4', 'Miscellaneous glyphs')
            ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç');

// Rename worksheet
$objPHPExcel->getActiveSheet()->setTitle('Simple');


// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);


// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="01simple.xls"');
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;

Я также пробовал:

$objWriter->save('namee.xls');

Но снова попросите меня загрузить.

Как я могу это решить?

Author: Alessandro Minoccheri, 2013-06-10

1 answers

Это потому, что следующие заголовки:

// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="01simple.xls"');
header('Cache-Control: max-age=0');

Это потому, что браузеры откроют поле сохранить как..., если увидят заголовок Content-Disposition. Удалите эти линии.

Однако excel в любом случае должен быть сохранен на диске. Разве ты этого не видишь? если нет, убедитесь, что PHP имеет соответствующие разрешения для записи в эту папку

 10
Author: hek2mgl, 2013-06-10 10:16:07