2013-05-03 58 views
-2
<p> 
<?php 
$filename = $_GET['package']; 
echo readfile("$filename.txt"); 
?></p> 

這是我的HTML的一部分,我想用這個URL來讀取一個txt的文件名:如果我用這文件不被顯示

http://example.com/something.html?package=new 

, html必須顯示new.txt的內容,但沒有。

我已經設置了error_reporting(-1)但沒有錯誤。

的URL http://repo.cydie.com/depictions/2.html只是看到源代碼

什麼是我的錯誤?

回答

0

你不需要回聲的ReadFile。 readfile()將輸出內容直接

readfile("$filename.txt"); 

手冊:

讀取文件並將其寫入到輸出緩衝區。

請注意,這會導致問題,因爲readfile()將返回從文件中讀取的字節數。所以,你的內容 - 如果存在 - 看起來像:

hello world 
12 

(注意換行,這就是爲什麼12,而不是11)


但是這不會導致問題,該文件ISN沒有發現。你應該檢查$filename是否真的存在!

+0

是的,100%存在 – Cydie 2013-05-03 12:48:42

+0

@Cydie什麼給你'var_dump($ filename);'? – hek2mgl 2013-05-03 12:49:37

+0

什麼給你'var_dump(file_exists($ filename。'.txt'));'? – hek2mgl 2013-05-03 13:02:52

1

你已經做了這裏

改變這種

echo readfile("$filename.txt"); 

readfile($filename . ".txt"); 
+0

不正確,OP的*插值*正確 – 2013-05-03 12:47:19

-1

錯誤拼接試試這個

<p> 
<?php 
    $filename = $_GET['package'].".txt"; 
    echo readfile($filename); 
?></p> 
+0

沒有工作:/ Idk爲什麼 – Cydie 2013-05-03 12:48:16