Maison > développement back-end > tutoriel php > Comment afficher des fichiers PDF dans les navigateurs utilisateurs avec PHP et Perl ?

Comment afficher des fichiers PDF dans les navigateurs utilisateurs avec PHP et Perl ?

DDD
Libérer: 2024-10-19 18:13:30
original
577 Les gens l'ont consulté

How to Display PDF Files in User Browsers with PHP and Perl?

Affichage des fichiers PDF dans les navigateurs des utilisateurs via PHP/Perl

Cette question répond à la nécessité d'afficher les fichiers PDF dans les navigateurs des utilisateurs, permettant le suivi des clics et dissimuler l'emplacement réel du PDF. Les solutions PHP et Perl existantes se sont révélées utiles pour créer des PDF et déclencher des boîtes de dialogue de sauvegarde, mais pas pour l'affichage direct.

Solution PHP

Pour afficher correctement le PDF dans un navigateur, apportez les ajustements suivants à votre code :

<code class="php">header('Content-Disposition: inline; filename="the.pdf"');</code>
Copier après la connexion

Solution Perl

De même, ajustez le code Perl pour inclure :

<code class="perl">print "Content-Disposition: inline; filename=\"the.pdf\"\n";</code>
Copier après la connexion

Considérations supplémentaires

Certains navigateurs téléchargent ou ouvrent automatiquement les fichiers PDF dans des applications externes. Pour éviter cela, l'en-tête suivant peut être ajouté aux solutions PHP et Perl :

header('Content-Transfer-Encoding: binary');
Copier après la connexion

Problème résolu : barre de progression du chargement

Pour afficher la progression du chargement dans Adobe Reader X, ajoutez l'en-tête suivant :

header('Accept-Ranges: bytes');
Copier après la connexion

Problème résolu : code final

Le code PHP final, entièrement résolu, est le suivant :

<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>
Copier après la connexion

Ce code mis à jour garantit que les fichiers PDF s'affichent correctement dans les navigateurs des utilisateurs, avec suivi des clics et masquage d'URL comme souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal