PHP是在服務器 - 帶的東西。一面不要忘記,一旦頁面生成編輯,它在客戶端上。我認爲用javascript來做這種事情更有意義,儘管你也可以將數據發佈到一個PHP頁面,然後獲取數據。
由POST方法「輸入」的數據發送給PHP頁面:
<form action="savedata.php">
<input id="someElement" name="someElementName" type="textarea" />
<input type="submit" />
</form>
接收它的PHP結束:
# savedata.php
$inputdata = $_POST["someElementName"];
$filename = "somefile.html";
file_put_contents($filename, $inputdata);
然後你可以在PHP中的鏈接下載文件。
echo "<a href='".$filename."'>Right-click, Save Target As...</a>";
在此之後,你可以刪除你的服務器是這樣的文件:
unlink($filename);
要打開保存文件對話框 - 重定向到文件,瀏覽器會打開一個保存文件對話框:
header('Content-type: text/plain');
header('Content-disposition: attachment; filename="$filename"');
要查看該文件的預覽,讓一個iframe:
echo "<iframe src='$filename' width=600 height=200 frameborder=0 />";
一個可能值得關於文件下載注入攻擊的文檔:https://www.aspectsecurity.com/wp-content/plugins/download-monitor/download.php?id=9 – nico 2012-04-15 12:02:00