0

我目前正在一个我没有亲自开发的网站上工作。它是基于 wordpress 的,但外部人员对其进行了很多开发。

我们有一些pdf的问题。当人们下载这些 pdf 甚至图像时,它们已损坏。我调查了原因,通过用记事本打开文件,我发现网页的 html 位于文档的开头。如果我删除此 html,则 pdf 不再损坏。

我知道问题出在哪里,但我似乎找不到解决方法。这是“下载”按钮的 html 链接。

<a href="<?php echo get_bloginfo('url');?>/?download_process=<?php echo $_GET['dl'];?>" target="_blank" id="#downloadfile_atag" class="downloadfile_atag" style="display:none;">Download</a>

当我点击这个按钮时,页面被刷新,下载开始。

我在代码中发现了这一行,它应该是负责捕获“GET”的代码的一部分:

if (isset($_GET['download_process'])) { 

这个“如果”中的代码有 100 多行,我没有足够的经验知道该怎么做。我需要一些关于在哪里看的建议。例如,有

ob_start();

一开始,和一个

ob_clean();

在代码中间。没有是正常的吗

ob_end_clean(); // or
ob_end_flush();

或类似的东西 ?

或者可能不是来自这个缓冲区。我应该检查什么样的指令?

或者它可能不是来自代码的那部分,如果是这样,我真的迷路了......

无论如何,提前感谢您的回答。

纪尧姆。

4

1 回答 1

0

IF 声明中有什么header();您没有向我们展示的内容吗?

如果是这样,有什么关于内容大小的吗?(这是我目前正在做的事情,所以有几个想法)

$fsize 是下载内容的大小。

$fsize = filesize($fullPath); //this is the filename and path
header("Content-Length: ".$fsize);  //this tells the header how big it should be.
于 2012-06-01T08:37:47.923 回答