Memaparkan Fail PDF dalam Pelayar Pengguna melalui PHP/Perl
Soalan ini menangani keperluan untuk memaparkan fail PDF dalam penyemak imbas pengguna, membolehkan penjejakan klik dan menyembunyikan lokasi sebenar PDF. Penyelesaian PHP dan Perl sedia ada didapati berguna dalam mencipta PDF dan mencetuskan dialog simpan, tetapi bukan untuk paparan langsung.
Penyelesaian PHP
Untuk memaparkan PDF dengan betul dalam penyemak imbas, buat pelarasan berikut pada kod anda:
<code class="php">header('Content-Disposition: inline; filename="the.pdf"');</code>
Penyelesaian Perl
Begitu juga, laraskan kod Perl untuk memasukkan:
<code class="perl">print "Content-Disposition: inline; filename=\"the.pdf\"\n";</code>
Pertimbangan Tambahan
Sesetengah penyemak imbas memuat turun atau membuka PDF secara automatik dalam aplikasi luaran. Untuk mengelakkan ini, pengepala berikut boleh ditambah pada kedua-dua penyelesaian PHP dan Perl:
header('Content-Transfer-Encoding: binary');
Isu Selesai: Memuatkan Bar Kemajuan
Untuk memaparkan kemajuan pemuatan bar dalam Adobe Reader X, tambahkan pengepala berikut:
header('Accept-Ranges: bytes');
Isu Selesai: Kod Akhir
Kod PHP terakhir yang diselesaikan sepenuhnya adalah seperti berikut:
<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>
Kod yang dikemas kini ini memastikan fail PDF dipaparkan dengan betul dalam penyemak imbas pengguna, dengan penjejakan klik dan penyekat URL seperti yang dikehendaki.
Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Fail PDF dalam Pelayar Pengguna dengan PHP dan Perl?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!