PHP でデータベース クエリを使用してバイナリ ファイルを取得しています。しかし、強制的にダウンロードしようとすると、header('Content-type: application/octet-stream') 行によって 0 バイトのファイルが生成されます。その行がなければ、完全なコンテンツを含むファイルをダウンロードできます。確かにバイナリファイルなので、その行が問題を引き起こす理由がわかりません。コード:
$result = mysql_query("SELECT data FROM stored_file WHERE file_name = '$q'");
while($row = mysql_fetch_array($result))
{
$file = $row['data'];
}
header('Content-disposition: attachment; filename='.$q);
header('Content-type: application/octet-stream');
header('Content-Length: '.filesize($file));
header("Pragma: no-cache");
header("Expires: 0");
echo $file;
何か案が?ありがとう。