PHP ile Flashget’e download uyartımı göndermekFlashget indirme yöneticisi olarak çokça tercih edilen bir program. Flashget sistem tepsisinde (system tray) beklerken aynı zamanda web tarayıcınızı da indirme görevleri için izler. Flashget bu sayede bir dosyayı indirmeye başlamadan önce ekranda belirerek indirmeyi Flashget ile yapmak isteyip istemediğinizi sorar. Bu özellik bazı durumlarda çalışmayabiliyor. Yani, flashget tarayıcıdan bir download gerçekleştiği halde olaya müdahil olmayabiliyor. Çözüm için PHP tarafından göndereceğiniz header satırları ile Flashget’e tetiklenmesi için uyartım gönderebilirsiniz.
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment ; filename=a.exe");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize('a.exe'));
binary header hatası (1), binaryheader indir (1), download manger (1), flashget ile php (1), php download header (1) |
Download sistemleriyle ilgilenenler için faydalı olacağını düşündüğüm bir uygulama.
http://site.com/download.php?id=4 dedik, dosya inmeye başladı ama, kaynağına baktığımızda dosyanın nerede olduğu ve dosya ismi yazıyor. Belki de biz bunu göstermek istemiyoruz. :) Basit uygulamalarda download.php sayfasında şu kod kullanılıyor;
<meta http-equiv="refresh" content="1;URL=".$filename[name]."" />
Ama biz bunu yapmayacağız. Çünkü dosya ismini linkte göstermek istemiyoruz.
Fazla gevezelik etmeden uygulamaya geçeyim…
<?php
$connect = mysql_connect("hostname", "username", "password");
mysql_select_db("database");
//Veritabanına bağlandık. Sıra geldi verilerimizi çekmeye.
//Benim `file` tablomda `id` ve `filename` sütunları var diyelim.
//`filename` sütununda dosyanın ismini tutuyoruz. (file.zip gibi)
$query = mysql_query("SELECT * FROM `file` WHERE `id` = '".$_GET['id']."'");
$show = mysql_fetch_array($query);
// files klasöründe dosyaları tutuyorum ben.
//Siz eğer başka bir klasörde tutuyorsanız değiştirebilirsiniz tabii ki.
header("Content-Type: application/x-msdownload");
header("Content-Disposition: attachment; filename=files/".$show[link]."");
?>
İşte bu kadar. Bu kodları download.php olarak kaydedin. download.php?id=1 dediğinizde 1 numaralı verinin dosya ismini alır, files klasöründen bulur ve kullanıcının indirmesine izin verir. Dosyanızın ismi hiçbir şekilde görünmez. Geliştirmek ve güzelleştirmek size kalmış arkadaşlar. Kolay gelsin.
Kaynak: http://www.ilhankaraoglu.com/dosya-ismini-vermeden-download-sayfasi-olusturmak
php download yapimi (4), link adresi oluşturma (2), download linki yapma (2), php gizli download linki verme (1), php download yapma kodu (1), ara vermeden dosya indirebilmek (1), php download linki oluşturmak (1), php download kodu (1), php download adresi (1), php gizli link yapma (1), php ile download linki yapma (1), php ile download php oluşturmak (1), php ile gizlenmiş dosya (1), php indirme bölümü oluşturma (1), php rasgele download linki olusturma (1)
Turkish
English
Chinese

