Merhabalar
.mp3 uzantılı olan dosyaya indirmeleri için link veriyorum fakat bütün tarayıcılar tıklayınca direk indirme işlemini başlatmıyor.Sadece mozilla indiriyor.Chrome explorer gibi tarayıcılar playerda açıyor.linke sağ tık yapıp farklı kaydet demek gerekiyor mecburen.Bu konuda yardıma ihtiyacım var çok acil
Acil php bilen yardımcı olabilecek ?
7
●549
- 19-10-2012, 19:05:08header ile çözebilirsiniz.
<?php
$filename = "theDownloadedFileIsCalledThis.mp3";
$myFile = "/absolute/path/to/my/file.mp3";
$mm_type="application/octet-stream";
header("Cache-Control: public, must-revalidate");
header("Pragma: hack"); // WTF? oh well, it works...
header("Content-Type: " . $mm_type);
header("Content-Length: " .(string)(filesize($myFile)) );
header('Content-Disposition: attachment; filename="'.$filename.'"');
header("Content-Transfer-Encoding: binary\n");
readfile($myFile);
?>
http://php.net/manual/en/function.header.php - 19-10-2012, 19:37:19Üyeliği durdurulduMalesef olmadı oda.
<?php
$file = '444.mp3';
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>
Bu kod ile oluyor fakat linke nasıl entegre edeblirim bunu. indirmek için tıklayınız denildiğinde indirilmesini nasıl saglarım yani - 19-10-2012, 20:52:47Kimlik doğrulama veya yönetimden onay bekliyor.Arkadaşım bir kaç tane yolla yapabilirsin. Birincisi linkleri verirken
http://www.site.com/mp3.php?file=dosya_adi
gibi kullanıp, yukarıda kullandığın header kodunu mp3.php diye kaydedip GET ile gelen dosyayı kontrol edip işlem yaparsın.
<?php if($_GET['file']){ $file = temizleme_fonksiyonun($_GET['file']); if (file_exists($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); ob_clean(); flush(); readfile($file); exit; }gibi. Ya da linkleri değiştirmek zorsa mp3 olanları o dosyaya yönlendirerek:
RewriteRule ^/dizin/(.*\.mp3) /mp3.php?file=$1 [L]
Veya htconfig içine ya da sunucun destekliyorsa htacess içine:
<FilesMatch "\.(?i:mp3)$"> ForceType application/octet-stream Header set Content-Disposition attachment </FilesMatch>
ekleyerek.