0
Этот сценарий успешно создан ПРВ в папке TMP/....PHP выход пустого ZIP
Однако выход ZIP в браузер пуст, и я не знаю, что я сделал неправильно.
$file = tempnam("tmp", "zip");
$zip = new ZipArchive();
// Zip will open and overwrite the file, rather than try to read it.
$zip->open($file, ZipArchive::OVERWRITE);
foreach(explode(',', $_POST["ids"]) as $Client_ID)
{
$sql_qry="select *
from ca_client_statement
where client_id='".$Client_ID."' and trading_period_month like '".$TP_Month."'";
$sql_err_no=sql_select($sql_qry,$sql_res,$sql_row_count,$sql_err,$sql_uerr);
//echo $sql_qry;
//echo '<br/>';
$row = mysql_fetch_assoc($sql_res);
$file_content = $row['pdf_statement'];
$file_name = 'tmp/'.$Client_ID.'statement.pdf';
$pdf=file_put_contents($file_name, $file_content);
$zip->addFile($pdf);
}
$zip->close();
// Stream the file to the client
header("Content-Type: application/zip");
header("Content-Length: " . filesize($file));
header("Content-Disposition: attachment; filename=\"a_zip_file.zip\"");
readfile($file);
unlink($file);
большое вам спасибо! его заставляли меня сходить с ума по часам – user1488434
Есть ли способ генерировать pdf-файлы без временного хранения их в моем каталоге tmp? на лету, так сказать – user1488434
@ user1488434: Я считаю, что вы можете пропустить запись временного файла и просто использовать '$ zip-> addFromString ($ Client_ID.'statement.pdf ', $ file_content);'. Посмотрите, работает ли это для вас. – Kaivosukeltaja