1

フォームによって書き込まれたindex2.phpというファイルがあります。

このファイルの内容全体は$final_code、出力バッファーを使用して変数内に格納しました。

ここで、ページの最後に[ダウンロード]ボタンを追加して、[名前を付けて保存]ダイアログを表示し、ユーザーがこのファイルのソースコード(つまり変数)を.txtとして保存できるようにします。

index2.php:

<?php

// Start buffering the output
ob_start();

?>

<!-- INDEX2.PHP HTML ELEMENTS HERE -->

<?php
// Store the contents of the buffer
$final_code = ob_get_contents();

// Print the contents of the buffer
ob_end_flush();
?>

<form action="savefile.php" method="post">

Happy? Save this to file: <input type="submit" name="savefile" value="Save" />

</form>

これをこのファイルまたはsavefile.phpに組み込む必要があるかどうかわからないため、後者は現在空白です。

4

3 に答える 3

5

ブラウザでファイルとして保存ダイアログを強制することはできないと思います。

txtファイルのダウンロードを強制するために私は次のことをします:

header('Pragma: anytextexeptno-cache', true);
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false);
header("Content-Type: text/plain");
header("Content-Disposition: attachment; filename=\"example.txt\"");
echo $output;

それがお役に立てば幸いです。

于 2012-12-12T12:10:58.997 に答える
1

ダウンロードを強制するには、ヘッダーを使用する必要があります。

 $file = 'somefile.zip';

 if(!file)
 {
     // File doesn't exist, output error
     die('file not found');
 }
 else
 {
     // Set headers
     header("Cache-Control: public");
     header("Content-Description: File Transfer");
     header("Content-Disposition: attachment; filename=$file");
     header("Content-Type: application/zip");
     header("Content-Transfer-Encoding: binary");

     // Read the file from disk
     readfile($file);
 }

例: http ://www.ryboe.com/tutorials/php-headers-force-download

詳細については、リンクを参照してください。

于 2012-12-12T12:07:31.123 に答える
0

PHPダウンロードスクリプト(ブラウザから)をお探しですか?

于 2012-12-12T12:03:28.210 に答える