0

クライアントが購入したファイルをダウンロードできるサイトがあります。

リンクが顧客に送信され、リンクが有効かどうかを確認するページに誘導され、有効な場合は製品をダウンロードできます。

リンクの例を次に示します。

多くのお客様から、ダウンロード時に .zip 拡張子が見つからず、問題が見つからない、「名前を付けて保存」しない限り私のマシンでは問題なく動作するとの声が寄せられています。問題。

ファイルのダウンロードを許可し、「名前を付けて保存」を押しても .zip 拡張子を保持する方法はありますか?

これは、ダウンロードにリダイレクトするために使用しているコードです...

header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$originalfilename");
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: binary");

助けてくれてありがとう。

4

3 に答える 3

2

ヘッダーのファイル名PSP_Tubes_PSP_Tubes_Lisa_Cree_The Gift_6932.zipPSP_Tubes_PSP_Tubes_Lisa_Cree_The.

于 2012-10-24T17:31:20.423 に答える
2

問題は、一部のファイルにスペースが含まれている可能性があります。その場合、現在のコードでは最初の部分のみが使用されるため、拡張部分が失われます。このようなエラーを防ぐには、次のようにファイル名を二重引用符で囲む必要があります。

header('Content-Disposition: attachment; filename="'.$originalfilename.'"');
于 2012-10-24T17:30:23.480 に答える
0

ファイル名のように見えるダミーの GET パラメータを追加します。

...&fname=/foo.zip
于 2012-10-24T17:25:40.143 に答える