我的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;
}
?>
答案 0 :(得分:1)
就像你发现标题没有被设置,因为输出已经在php文件的早期开始了。
在第三行,您有require("GetMime.php");
GetMime.php中的checkMime函数有echo finfo_file($finfo, $fileDES);
在设置标头之前调用checkMime
。在设置标题之前,您无法回显任何内容。