-
Üyelik
13.06.2012
-
Yaş/Cinsiyet
31 / E
-
Meslek
Bilgisayar Mühendisi
-
Konum
İzmir
-
Ad Soyad
B** Ç**
-
Mesajlar
396
-
Beğeniler
82 / 125
-
Ticaret
3, (%100)
Merhabalar,
Tek kullanımlık indirme linki için size şöyle basit bir çözüm önerebilirim,
İndirme yapılması için gireceğiniz ekranda kullanıcı numarası tabanlı benzersiz bir kod oluşturabilirsiniz.
Örnek vermek gerekirse;
$temp_hash = md5(uniqid($user_id, true));
Bu kodu veritabanındaki, örneğin "download_hash" tablosuna indirilecek dosyanın numarası ile ekleyip , sonrasında oluşturulmuş olan linke tıklayıp , yüklenenler tablosu ile join yapıp gerçek dosya yolunu alarak yine php yardımıyla dosya indirmesi yaptırabilirsiniz.
Örnek PHP kodu aşağıdadır.
$file = "yüklenenler tablosundan gelecek asıl dosya ismi";
$ext = pathinfo($file, PATHINFO_EXTENSION);
header("Content-Disposition: attachment; filename=".$temp_hash.".zip");
header("Content-Length: " . filesize($file));
ob_clean();
ob_end_flush();
readfile($file);
Bu işlemi yapmadan önce de download_hash kodunun durumunu pasif yapabilirsiniz.
Ayrıca kullanıcının numarası(user_id) ile beraber veritabanına ekleme yaparsanız , linki kullanıcı bazlı da yapabilirsiniz.
Bir dahaki indirme denemesinde durum kontrolü yapıp aktif değilse hata mesajı bastırabilirsiniz.
Başka bir kullanıcı veya üye olmayan biri linke tıklasa bile dosyayı indiremeyeceklerdir.
Eğer başarısız olursanız konuda ücretli destek veren arkadaşları da değerlendirebilirsiniz.
Kolay gelsin , başarılar.
-
Üyelik
13.06.2012
-
Yaş/Cinsiyet
31 / E
-
Meslek
Bilgisayar Mühendisi
-
Konum
İzmir
-
Ad Soyad
B** Ç**
-
Mesajlar
396
-
Beğeniler
82 / 125
-
Ticaret
3, (%100)
IP limitinden ziyade indirme linklerini kullanıcı tabanlı ve kullanıcıları da mail,telefon aktivasyonlu şekilde tutarsanız sorunu çözebilirsiniz.
Caesar
ich bin /root
Kullanıcı
-
Üyelik
24.08.2015
-
Yaş/Cinsiyet
39 / E
-
Meslek
Bilgisayar Mühendisi
-
Konum
İstanbul Anadolu
-
Ad Soyad
O** B**
-
Mesajlar
837
-
Beğeniler
77 / 558
-
Ticaret
10, (%100)
Hocam indir dosyası içerisine session ile üyelik bilgilerini at.
o bilgileri kontrol et premiumsa premium suncuudan indirt değilse normal sunucudan.
Başka yerde paylaşsa bile başka yerden tıklayan herhangi bir üyelik sessionu gelmeyeceği için zaten indiremez.
Bu kadar neden kafa patlattınız ki?
Ip adresinide atarsınız sessionun içerisine eğer belirli bir süre içerisinde ip adresi değişiyorsa kullanıcının hesabını bloke eder aktif etmesi içim mail adresine link gönderirsiniz. O linke tıkladığında tekrardan aktif olur. Böylelikle hesap paylaşımıda yapamaz. Her hesap paylaşımında mail ile uğraşamaz.
1 kişi bu mesajı beğendi.
>/dev/null 2>&1
-
Üyelik
29.01.2013
-
Yaş/Cinsiyet
28 / E
-
Meslek
Öğrenci
-
Konum
Tekirdağ
-
Ad Soyad
E** Ç**
-
Mesajlar
694
-
Beğeniler
44 / 128
-
Ticaret
5, (%100)
Takip
ETC Mobile Apps
Mobil uygulama yapılır.