PDF可下载PHP

PDF可下载PHP,php,mysql,pdf,Php,Mysql,Pdf,我需要从保存的目录下载文件。我使用了以下代码 $sqlh = mysql_query("SELECT * FROM tbl_health WHERE tbl_users_users_id = '".$id."'", $con) or die(mysql_error()); while($data = mysql_fetch_array($sqlh)){ $data['link']; echo "<a href='vie

我需要从保存的目录下载文件。我使用了以下代码

 $sqlh = mysql_query("SELECT * FROM tbl_health WHERE tbl_users_users_id = '".$id."'", $con) or die(mysql_error());

        while($data = mysql_fetch_array($sqlh)){

             $data['link'];
            echo "<a href='view.php?id=" .$data['health_id']. "'>Download</a>";

        }
文件正在下载,但当我打开它时,文件的内容丢失了。当我试图通过浏览器打开它时,它会说此PDF文档可能无法正确显示


请任何人告诉我出了什么问题。

首先,如果您检查了错误,报头调用之前的
回音应该会给您一个错误


然后
fopen
创建一个流句柄,但您不使用它
readfile()
将文件发送到客户端。

回音将中断文件,我将最后两行更改为:
readfile($name)谢谢。我删除了回音,并将您建议的readfile($name)放入其中;以及它的工作原理。Thanx:)如果您愿意标记为已接受,请回答。
require_once('includes/db.php');
if(isset($_GET['id'])){
$sql = mysql_query("SELECT * FROM tbl_health WHERE     health_id='".$_GET['id']."'") or die(mysql_error());
echo $_GET['id'];
$data = mysql_fetch_array($sql);
$file = $data['link'];
$name = "health/".$file;
header("Content-Type: application/pdf");
header("Content-Length: ". filesize($name));
header("Content-Disposition:attachment;filename=". $file);
$fp = @fopen($name, "r");
    fclose($fp);
}