PHP dosya indirme linki oluşturmak [çoğaltmak]

2 Cevap

Possible Duplicate:
open download dialog with php

I have a link in my page say, <a href='test.pdf'>(Test.pdf)</a>. When I click on that link, download dialogue box should open to download that file. Can anyone help me in implementing this in PHP?

teşekkürler

2 Cevap

$filename = 'Test.pdf'; // of course find the exact filename....        
header('Pragma: public');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: private', false); // required for certain browsers 
header('Content-Type: application/pdf');

header('Content-Disposition: attachment; filename="'. basename($filename) . '";');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($filename));

readfile($filename);

exit;

download.php olarak yukarıdaki dosyayı adlandırın

HTML:

<a href="download.php">Test.pdf</a>

İşte bunu yapmak gerekir.

Bir PDF dosyası halinde, çoğu tarayıcı varsayılan tarayıcınızda yüklemek için yardımcısı (cambaz) aramak için gidiyoruz. Bu varsayılan davranışı etrafında almak için çalışıyoruz benim tahminim.

. (Eğer apache * nix kutusunu konum varsayarak) Bunu yapmanın en kolay yolu, bu sonucu var ve satır eklemek istediğiniz dizinde bir htaccess dosyası yapmak için:

AddType application / octet-stream. Pdf

Bu varsayılan olarak indirmek için genişleme. Pdf ile herhangi bir dosyayı neden olur. Diğerleri FilesMatch yönergesini kullanarak download yaparken bile tarayıcıda sayfa yük bazı. Pdf dosyaları olabilir (http://www.askapache.com/htaccess/using-filesmatch-and-files-in-htaccess.html).

Ben orijinal bir soru "Ben PHP ile bunu nasıl yaparım" dedi farkında ama ben bir daha basit, daha zarif bir çözüm için aradılar halinde yayınlamak düşündüm. Aklınızda bir. Htaccess dosyasına konulan direktif tutmak mı da onun altındaki alt dizinleri etkileyecektir.