問題タブ [force-download]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
9083 参照

php - PHPでのばかげた、クロスブラウザの強制ダウンロード

私は強制ダウンロードを使用して、私が行ったサイト(http://pr1pad.kissyour.net)で主にzipとmp3をダウンロードしています-グーグルアナリティクス、データベースでダウンロードを追跡し、実際のダウンロードパスを非表示にします:

これです:

それはCI1.7.2のLAMP上にあります-開発中にこれらの問題が発生したため、これはインターネット全体のさまざまなハウツーからまとめられた私自身の方法です:-サーバー制限。 サイトがCI1.7.2で行われ、バッファをクリーンアップする必要があったため、-ob_end_flush()の代わりに通常のini_setバッファを使用しました。_fullreadfread@readonly

今...それは動作しません。すると、予想されるサイズ/ダウンロード時間が表示されなくなりました-クリーンアップしようとしましたが、コードをクリーンアップしているときに、何かが発生しました以前のバージョンでは、機能しませんでした(設定の変更)-編集:機能しない=すべてをブラウザウィンドウに出力します。

だから私は言った、それをねじ込み、私はここを見ていきます。

したがって、私は基本的にスクリプトまたは関数を探します。これを出力モデルに配置して、次のことを実行します。

  • 強制ダウンロードを呼び出す(Chromeではダウンロードを開始し、IE、FFではSafariでモーダルオープン/保存/キャンセルを開きます)
  • ファイルのサイズと推定dl時間を表示します(これはブラウザ次第ですが、最初に、ブラウザはファイルサイズを知っている必要があります
  • IE6、7、8、FF3、Opera、Chrome、およびPC + Mac(Linux ...私は本当に気にしない)のサファリでの作業(テストおよび確認済み!)-これはヘッダー部分です
  • サーバー上では、56MBのメモリ制限のようなものもありますが、これを追加することはできません。これも重要です。

前もって感謝します。

編集:.htaccessでダウンロードを強制しようとしたので、今まで以上に厄介な気分になりました-それが機能している間、マイナー/メジャー(あなたを選んでください)の問題はほとんどありませんでした

  • それはフルパスを示しました(私にとってはマイナー)
  • ダウンロード全体が完了するまで待機し(「接続中」と表示)、ダウンロード中であることを表示します。1秒でダウンロードします(私にとってはメジャー)

ここで、.htaccessを削除しましたが、ダウンロードが完了するまで待機し(最初にキャッシュにダウンロードした場合と同じように)、取得してconnected[開く/保存]ダイアログを表示します。

0 投票する
1 に答える
1163 参照

php - ファイルと画像を強制的にダウンロードするための PHP readfile

readfile() を使用して php 経由でファイルを送信したい

私が気付いたのは、readfile がダウンロードを強制することですが、ダウンロードを強制せずにブラウザーに画像を表示したい場合はどうすればよいでしょうか?

ファイルがイメージであっても、readfile はダウンロードを強制しますか?

もしそうなら、ファイルが画像のときにタグを使用できるようにする解決策はありますか?

ありがとう!

0 投票する
1 に答える
5483 参照

google-chrome - Google Chrome 拡張機能でダウンロードを強制する

データのバックアップ ファイルをダウンロードできる Google Chrome 拡張機能を作成しています。ユーザーがボタンを押すと、[名前を付けて保存] ダイアログ ボックスが開き、ファイルを自分のコンピューターに保存できるようにしたいと考えています。何も機能していないようで、インターネットで答えが見つかりません。私はいくつかのアプローチを試しました:

  1. document.execCommand('SaveAs', null, 'filename.json');このコマンドは IE 専用であり、Webkit の代替手段がないように見えるため、Thisを使用しても機能しません。
  2. データ URIの使用。これは最も有望で、Opera と Firefox で機能しましたが、問題は、Chrome も Safari も URI の Content-disposition=attachment;-header をサポートしていないように見えることです。これはうまくいくはずです。ctrl/cmd+s(Chrome では、データ URI からページにアクセスすることさえできません)
  3. を使用しXMLHTTPRequestます。私はこれを試したことはありませんが、リクエストを中継できる方法が必要ですか? 外部サーバーを使用したくないことに注意してください (その場合、単純に POST 要求を送信して Content-disposition:-header を適用することもできます)。
  4. 利用可能な Chrome 拡張 API を使用する。しかし、この目的のためのものはないようです。

外部サーバーを使用したくない理由は、ホスティングに料金を支払う必要がなく、送信されるデータがユーザーにとって機密である可能性があり、誰のプライバシーも侵害したくないからです。

誰かがこれを機能させましたか?

0 投票する
1 に答える
1303 参照

php - PDF ファイルの強制ダウンロードに関する問題

ファイルを強制的にダウンロードする次の機能があります。

PDF ファイルと contentType = "application/pdf" を送信します。問題は、ダウンロードした PDF ファイルを開こうとすると、「このドキュメントを開くときにエラーが発生しました。ファイルが壊れている可能性があります」と表示されることです。元のファイルを開くことができ、まったく同じに見えるので奇妙です(ファイル名、サイズなど)

0 投票する
2 に答える
2200 参照

php - Codeigniter 強制ダウンロード IE

つまり、ダウンロード ヘルパーに問題があります。基本的に、pdf の請求書と pdf の証明を動的に作成するサイトを構築しました。IE では毎回失敗し、次のエラーが表示されます: mysite.com から $filename をダウンロードできません

このインターネット サイトを開くことができません。要求されたサイトは利用できないか、見つかりません。後でもう一度やり直してください。

force_download を開始するために、次のコントローラーに向ける URL を持つアンカー target _blank があります。

当初は MY IE に問題があるのではないかと思っていましたが、他のサイトで PDF をダウンロードできます。その後、codeigniters ダウンロード ヘルパーに問題がある可能性があると考えましたが、ヘルパーで IE 用の特別な規定が既に作成されているようです。

何かアイデアがあれば教えてください。ありがとうございました。

0 投票する
2 に答える
36384 参照

php - サーバーに保存せずにダウンロードするためのPHP作成ファイル

最終的な目標:ユーザーがフォームに情報を入力できるWebページを作成したいと思います。その情報を使用して、指定された情報をテンプレートに挿入し、強制的にダウンロードして、htmlファイル(以下ではtest-download.htmlと呼びます)を作成します。これを「同時に」人々が使用する予定のワークショップでデモンストレーションしたいので、ファイルをサーバーに保存せずに、強制的にダウンロードしたいと思います。

これまでのところ:これは私のhtmlファイル(test.html)にあります:

そしてこれは私のtest.phpにあります:

これにより、ファイルtest-download.htmlファイルが上書きされ、強制的にダウンロードされます。

質問:サーバー上のファイル(test-download.html)をいじらずにこれを行うにはどうすればよいですか?

0 投票する
1 に答える
15715 参照

codeigniter - Codeigniter: ファイルをダウンロードしてリダイレクトする

このページにフォームがありますhttp://www.obsia.com/products/thassos_wonder_brochure/ 送信を押すと、ファイルのダウンロードを開始し、ありがとうページにリダイレクトされます。しかし、ファイルをダウンロードするか、ダウンロードしていただきありがとうございますページをリダイレクトまたはロードすることしかできません。

これは、フォームをチェックして送信するための関数です。

以下は、ダウンロードページへのリダイレクトで終わるサンキューページのコードです: (UPDATE)

これは、ダウンロード ページで使用したコードです。ファイルをダウンロードして、ありがとうページにリダイレクトするにはどうすればよいですか。

どんな助けでも大歓迎です。

0 投票する
6 に答える
14723 参照

php - 大量のメモリを使用せずに大きなファイルを強制的にダウンロードする方法は?

ユーザーに大きな zip ファイルを提供しようとしています。2 つの同時接続がある場合、サーバーはメモリ (RAM) を使い果たします。メモリ量を 300MB から 4GB (Dreamhost VPS) に増やしたところ、問題なく動作しました。

2 つ以上の同時接続を許可する必要があります。実際の 4GB では、20 の同時接続が可能になります (残念です)。

さて、私が使用している現在のコードでは、実際のファイル サイズの 2 倍のメモリが必要です。それは残念です。ファイルをユーザーに「ストリーミング」するようなものが必要です。したがって、ユーザーに提供されているチャンクを超えないように割り当てます。

次のコードは、CodeIgniter (PHP フレームワーク) で使用しているものです。

force_download 関数は次のとおりです (CodeIgniter のデフォルトのヘルパー関数)。

Google で見つけたチャンク ベースのコードをいくつか試しましたが、ファイルは常に破損して配信されました。おそらく悪いコードが原因です。

誰でも私を助けることができますか?

0 投票する
4 に答える
100343 参照

javascript - Javascript を使用して画像を強制的にダウンロードする

Javascript/jQuery を使用して画像をダウンロードする (ダウンロード ダイアログを開く) スクリプトを作成して、ブラウザが画像を表示しないようにする方法があるかどうかを知りたいです。

0 投票する
3 に答える
4645 参照

codeigniter - CodeIgniterのPHPWordクラスが正しく生成されておらず、Wordファイルにエラーがスローされます

わかりました、それで私は見つけることができるPHPWordクラスに問題があります:http://phpword.codeplex.com

奇妙なことに、「example」ファイルでこれと同じコードを使用すると、生成に問題なく機能します。ヘッダーを使用してダウンロードを強制しない場合、ファイルは正常に開きます。ただし、ヘッダーでこのコードを使用すると、ダウンロード時にファイルが破損していて開くことができないというエラーがワードファイルにスローされますが、正常に開きます。

これは、ファイルを生成しようとするときに使用しているコードです。私が抱えている問題は、ダウンロードを強制しようとするとエラーが発生することです。助けてくれてありがとう!質問を完全に理解していない場合は、質問してください。

アップデート:

これが私が受け取っているエラーの画像です。迅速な対応に感謝します。実際にCodeignitersの方法でTommを試してみます。朝。

単語エラー