Maison >développement back-end >tutoriel php >Comment afficher des fichiers PDF dans le navigateur avec PHP et Perl : un guide complet

Comment afficher des fichiers PDF dans le navigateur avec PHP et Perl : un guide complet

Susan Sarandon
Susan Sarandonoriginal
2024-10-19 18:18:02727parcourir

How to Display PDF Files in the Browser with PHP and Perl: A Comprehensive Guide

Affichage de fichiers PDF dans un navigateur à l'aide de PHP et Perl

Contexte :

Afin de suivre les clics et de masquer les véritable emplacement des documents PDF, vous désirez une solution pour afficher les fichiers PDF dans le navigateur d'un utilisateur. Malgré des recherches approfondies sur Internet, vous n'avez pas trouvé d'approche simple.

Solution avec PHP :

<code class="php">header('Content-type: application/pdf');
header('Content-Disposition: inline; filename=example.pdf');
@readfile('path/to/example.pdf');</code>

Solution avec Perl :

<code class="perl">open(PDF, 'path/to/example.pdf') or die "Could not open PDF [$!]";
binmode PDF;
my $output = do { local $/; <PDF> };
close(PDF);

print "Content-Type: application/pdf\n";
print "Content-Length: " . length($output) . "\n\n";
print $output;</code>

Dépannage :

  • Barre de progression du chargement manquante dans Adobe Reader X : Assurez-vous que le 'Content-Transfer-Encoding: binaire ' est défini.
  • Considérations supplémentaires relatives au navigateur : Les navigateurs peuvent avoir des paramètres qui forcent les téléchargements de PDF ou les ouvrent dans des applications externes.

PHP finalisé Code :

<code class="php">$file = './path/to/example.pdf';
$filename = 'Custom file name for example.pdf';

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>

Ce code doit permettre l'affichage des fichiers PDF dans le navigateur d'un utilisateur, tout en vous permettant de suivre les clics et de maintenir le niveau de confidentialité 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!

Déclaration:
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