PHP/Perl 経由でユーザーのブラウザーに PDF ファイルを表示する
この質問は、ユーザーのブラウザー内で PDF ファイルを表示し、クリック追跡を有効にする必要性に対処します。そして PDF の実際の場所を隠します。既存の PHP および Perl ソリューションは、PDF の作成や保存ダイアログのトリガーには役立ちますが、直接表示には役に立ちません。
PHP ソリューション
PDF を適切に表示するにはブラウザで、コードに次の調整を加えます:
<code class="php">header('Content-Disposition: inline; filename="the.pdf"');</code>
Perl ソリューション
同様に、Perl コードを調整して次の内容を含めます:
<code class="perl">print "Content-Disposition: inline; filename=\"the.pdf\"\n";</code>
その他の考慮事項
一部のブラウザでは、PDF が自動的にダウンロードされたり、外部アプリケーションで PDF が開かれたりします。これを防ぐために、次のヘッダーを PHP ソリューションと Perl ソリューションの両方に追加できます:
header('Content-Transfer-Encoding: binary');
解決済みの問題: 読み込み進行状況バー
読み込みの進行状況を表示するにはAdobe Reader X のバーに次のヘッダーを追加します:
header('Accept-Ranges: bytes');
解決された問題: 最終コード
完全に解決された最終的な PHP コードは次のとおりです:
<code class="php">$file = './path/to/the.pdf'; $filename = 'Custom file name for the.pdf'; /* Note: Always use .pdf at the end. */ header('Content-type: application/pdf'); header('Content-Disposition: inline; filename="' . $filename . '"'); header('Content-Transfer-Encoding: binary'); header('Content-Length: ' . filesize($file)); header('Accept-Ranges: bytes'); @readfile($file);</code>
この更新されたコードにより、必要に応じてクリック追跡と URL マスキングを使用して、PDF ファイルがユーザーのブラウザーで正しく表示されるようになります。
以上がPHP と Perl を使用してユーザーのブラウザで PDF ファイルを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。