停止在PHP中下载文件的标题

时间:2016-08-31 21:04:04

标签: php sql header mariadb

我的PHP代码似乎有问题,每当我在浏览器中访问该文件时,它会自动下载该文件,而不应该显示该文件。这是我的代码:

<?php
$fileID = $_GET['f'];
require("GetMime.php");
$con = mysql_connect("localhost","root","password");
if (!$con){
    die("Coulnd't connect to serer: ". mysql_error());
}
mysql_select_db("DownloadCenter",$con);
$FileID = mysql_query("SELECT FileSRC FROM FileCenter WHERE FileKEY = '$fileID'");
$result = mysql_fetch_array($FileID);
$FMime = checkMime($result['FileSRC']);
if (file_exists($result['FileSRC'])){
    $contents = file_get_contents($result['FileSRC']);
    header('Content-type: '. $FMime);
    echo $contents;
}
?>

1 个答案:

答案 0 :(得分:1)

就像你发现标题没有被设置,因为输出已经在php文件的早期开始了。

在第三行,您有require("GetMime.php");

GetMime.php中的checkMime函数有echo finfo_file($finfo, $fileDES);

在设置标头之前调用checkMime。在设置标题之前,您无法回显任何内容。