当我在 PHP 中单击“下载”时,下载的是 .php 文件而不是 .pdf 文件

问题描述 投票:0回答:3

经过一番努力,我能够将 pdf 文件存储到 MySql 数据库中,然后通过检索在浏览器中打开它们。我的问题是,当我单击下载选项时,它会以 .php 文件形式下载,而必须以 .pdf 格式下载。有人能帮我一下吗。预先感谢。

<?php
$id =  $_POST["iid"];` 
$link = mysqli_connect("localhost", "root", "","test");
mysqli_select_db($link,"test");
$sql = "SELECT image FROM test_image WHERE id=$id";
$result = mysqli_query($link,"$sql");
$row = mysqli_fetch_assoc($result);
mysqli_close($link);
header("Content-type: application/pdf");
echo $row['image'];
?>
php mysql
3个回答
2
投票

您应该将文件存储在某个文件夹中,而不是数据库中。

将文件名或 url 存储在数据库中。

例如,

如果您将文件存储在下载文件夹中,并将文件名存储在数据库中,则下载链接 html 如下所示:

<a href="/download/the_file_name_you_want_to _download.pdf" download>

您可以查看HTML下载属性


1
投票

设置正确的标头来下载文件。

header('Content-type: application/pdf');
header('Content-disposition: attachment; filename="filename.pdf"');
echo $pdf

希望有帮助


0
投票

警告:无法修改标头信息 - 标头已存在 警告:无法修改标头信息 - 标头已开始于

© www.soinside.com 2019 - 2024. All rights reserved.