-1

所以我有一个上传页面,您可以在其中将文件添加到数据库中,文件保存在“cursuri/”中,并在 mysql 表中插入 varchar。

现在我想下载文件但我不能(我检查过,上传的文件在文件夹中),我一直得到一个空的 .htm 文件。

我检查了 mysql 表 preda.material(varchar) 中的数据,它包含一个 binary_file.dat 和里面的文件名。

现在脚本:

<?php
session_start();
include_once('scripts/connect_to_mysql.php');
$ID_material = (int) $_GET['ID_material'];  
$sql = "SELECT material FROM `preda` WHERE `ID_material` = '$ID_material' "; 
$result = mysql_query($sql);
while($info = mysql_fetch_array($result)) 
{ 
header("Content-disposition: attachment; filename=". $info['material']);        

/* print "Cursuri/".$info['material'] ." <br>"; */
}

?>
4

1 回答 1

3
header("Content-disposition: attachment; filename=". $info['material']);        

这只会设置一个 HTTP 标头,告诉接收者(浏览器)HTTP 响应的正文包含名为 XYZ 的文件的文件数据。它本身并不附加文件或使浏览器能够从某处获取文件。您仍然需要自己输出实际的文件数据。见readfile

于 2012-09-10T15:29:34.080 回答