Anzeigen von PDF-Dateien im Browser von Benutzern mit PHP oder Perl
Problem:Benutzer benötigen die Möglichkeit, PDF anzuzeigen Dateien in ihren Browsern mit der zusätzlichen Funktionalität, Klicks zu verfolgen und den tatsächlichen Speicherort der PDF-Datei zu verbergen.
Lösung:
Sowohl PHP als auch Perl bieten Methoden zum direkten Rendern von PDF-Dateien in einem Browser. Hier sind die grundlegenden Schritte:
PHP:
<code class="php">header('Content-type: application/pdf'); readfile('the.pdf');</code>
Perl:
<code class="perl">open(PDF, "the.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>
Zusätzliche Überlegungen:
Beispielcode:
PHP (vollständig):
<code class="php">$file = './path/to/the.pdf'; $filename = 'Custom file name for the.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>
Perl (vollständig):
<code class="perl">use strict; use warnings; my $file = 'the.pdf'; my $filename = 'Custom file name for the.pdf'; open(PDF, "<$file>") or die "Could not open PDF: $!"; binmode PDF; my $size = -s PDF; print "Content-type: application/pdf\n"; print "Content-Disposition: inline; filename=\"$filename\"\n"; print "Content-Transfer-Encoding: binary\n"; print "Content-Length: $size\n\n"; print while <PDF>;</code>
Hinweis: Browsereinstellungen können diese Techniken außer Kraft setzen und das Herunterladen oder Öffnen der PDF-Datei in einer externen Anwendung erzwingen.
Das obige ist der detaillierte Inhalt vonWie zeige ich PDFs in Browsern mit Klickverfolgung und Standortverbergung mit PHP oder Perl an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!