Хорошо, у меня возникли проблемы с классом PHPWord, который можно найти: http://phpword.codeplex.com
Странная вещь в том, что когда я использую этот же код в файле «примера», он прекрасно работает при генерации. Когда я не заставляю загрузку с помощью заголовков, файл откроется просто отлично. Использование этого кода вместе с заголовками приводит к тому, что при загрузке он выдает ошибки в словесном файле, говоря, что файл поврежден и его нельзя открыть, но затем он открывается просто отлично.
public function export()
{
// Load PHPWORD Library
$this->load->library('PHPWord');
$sec = $this->phpword->createSection($secStyle);
$header = $sec->createHeader();
$header->addWatermark('images/CC_watermark.png', array('marginTop'=>1015, 'marginLeft'=>-80));
$resultSelected = $this->input->post('cbox');
foreach($resultSelected as $row)
{
$sec->addText($row);
echo $row."<br>";
}
$fileName = "Plan_Generate_".date('Ymd').".docx";
// Force Download
$filePath = $fileName;
$fileName = basename($filePath);
// $fileSize = filesize($filePath);
// Output headers.
header("Cache-Control: private");
header("Content-Type: application/stream");
// header("Content-Length: ".$fileSize);
header("Content-Disposition: attachment; filename=".$fileName);
// Output file.
// readfile ($filePath);
// exit();
// Save File
// $fileName = "files/SomethingNew_".date("Ymd").".docx";
$objWriter = PHPWord_IOFactory::createWriter($this->phpword, 'Word2007');
$objWriter->save('php://output');
}
Это код, который я использую при попытке создать файл. Проблема в том, что она выдает ошибку при попытке принудительной загрузки. Спасибо за любую помощь! Задавайте вопросы, если вы не до конца понимаете вопрос.
Обновление:
Вот изображение ошибки, которую я получаю. Спасибо за быстрые ответы, и я на самом деле собираюсь попробовать Codeigniters, Томм. утро.