簡體   English   中英

PHP輸出空ZIP

[英]PHP output empty ZIP

此腳本成功生成pdf到文件夾tmp / ....

然而,瀏覽器的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); 

file_put_contents()返回寫入的字節數,而不是文件名。 嘗試將其后面的行更改為:

$zip->addFile($file_name);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM