0

解決済み:このコメントを見てください!

ユーザーが保存する必要があるいくつかのxmlデータをエコーするこのphpページがあります。データをダウンロードするページは「download.php」と呼ばれるため、「名前を付けて保存」ウィンドウを自動的に開くページが必要です。これは、それ自体で「名前を付けて保存」を開始しません。ここで、同じ質問をしている人々がスタックオーバーフローで他の多くのスレッドを読みました。それらのどれも私の問題を解決しません。はい、意図的に複製を作成しています。

これは私のコードです:

$file.='<bpage>';
$file.='<title>'.$_POST["title"].'</title>';
$file.='<desc>'.$_POST["desc"].'</desc>';
$file.='<cont>'.$_POST["cont"].'</cont>';
$file.='<img>'.$_POST["img"].'</img>';
$file.='<tdata>'.$_POST["tdata"].'</tdata>';
$file.='<link>'.$_POST["link"].'</link>';
$file.='<writer>'.$_POST["writer"].'</writer>';
$file.='<date>'.$_POST["date"].'</date>';
$file.='</bpage>';

header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$_POST["title"].'.bpage');
echo $file;

すべてのヘッダーを無視したかのように、「名前を付けて保存」ダイアログはなく、通常のページだけです。Chrome と最新バージョンの PHP を使用しています。

--
Locercus よろしく

編集: ホスティングに One.com を使用しています。ヘッダー機能をブロックしている可能性はありますか?

4

1 に答える 1

0

Chromeがファイルの自動ダウンロードに設定されているようです。このような場合、保存ダイアログは表示されませんが、ファイルはデフォルトのChromeダウンロード場所にダウンロードされます。

保存ダイアログを表示するには、次の手順を実行します。

  • Chromeレンチメニュー>[設定]>[詳細設定]>[ダウンロード]に移動し、次のチェックボックスをオンにしますAsk where to save each file before downloading
于 2012-08-21T18:20:12.387 に答える