2010-07-19 32 views
-1

我正在一個wordpress模板中,我的ftp文件被列出。如果我在文件上單擊我打電話d.php(d =下載)這裏我只是沿着文件的路徑傳遞,我想強行與PHP&Wordpress:頭文件已發送 - 該怎麼辦?

header('Content-Disposition: attachment; filename="'. $file .'"'); 

這不是爲我工作的下載,因爲瀏覽器不斷告訴我:

警告:不能更改頭信息 - 頭已經發出(輸出開始/clientdata/n5200-2-dynamic/a/l/mydomain.net.au/www/wp-content /themes/mytheme/d.php:25)in /clientdata/n5200-2-dynamic/a/l/mydomain.net.au/www/wp-content/themes/mytheme/d.php on line 45

有什麼想法我可以在這裏做什麼? d.php甚至不包含任何特定於wordpress的東西(get_header()或get_footer()) - 它只是我主題模板目錄中的一個簡單的php文件。任何想法我能在這裏做什麼?

謝謝

+1

d.php中的內容,特別是第25行,可能是發送輸出? – 2010-07-19 22:48:03

回答

2

在PHP中使用header()函數時,必須在發送任何輸出之前發送它。這意味着它必須在<html>標籤之前執行。這意味着將它包含在程序上早期的腳本中。

+0

你救了我這麼一個巨大的頭痛哈哈 – 2013-05-08 15:33:48

0

我相信WordPress的路線一切直通index.php文件,所以在技術上你被包裹的WordPress的東西里面。

無論如何,有些事情是在你之前發送標題。這可能是空格,PHP輸出,或者實際的頭文件。