Dark_Soul Mesaj tarihi: Eylül 17, 2009 Paylaş Mesaj tarihi: Eylül 17, 2009 Selam yine bir php sorunsalı ile karşınızdayım:) temp klasörümde 30-40 tane dosya var bunların linklerini internet browserında direk göstermek yerine random bir id vermek istiyorum.Mesela: //localhost/a/temp/DBDesigner4.0.5.6_Setup.exe Dosyam bu bunun yerine: //localhost/a/2726215 gibi random bir sayı yaratıp buna tıklayınca kullanıcı dosyayı indirsin istiyorum. Birde bunu googleda nasıl aratacagımı bilmiyorum,ne bu işlemin adı? Encrypt php links gibi bişeler yazdım tam istedigim şeyi bulamadım. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
wildpervert Mesaj tarihi: Eylül 17, 2009 Paylaş Mesaj tarihi: Eylül 17, 2009 geri dönüştürülebilen bir Encryption bulup path lerini çevirip db ye kaydedip, sonra decrypt edip dl ettirtebilirsin. yada kasma hiç, bi table a pathlerini gir, sonra id numarasını kullan. zaten auto increment id si olucak, ondan faydalanabilirsin. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Dark_Soul Mesaj tarihi: Eylül 17, 2009 Konuyu açan Paylaş Mesaj tarihi: Eylül 17, 2009 auto inc. yaparak dosya isimlerini çekilebilir tabide mesela: ...../download.php?id=11 bu a dosyası diyelim adam bunun yerine: ...../download.php?id=12 gibi yazarakten tüm dosyalara erişebilir,bunu istemiyorum işte :),her dosya için random sayı üretmek istiyorum yani deneme yoluyla tüm dosyalara erişimi olmasın istiyorum,çünkü bir sürü kullanıcı ve dosya olacak ama herkesin sadece kendi dosyalarına erişebilmesi lazım. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
nedanko Mesaj tarihi: Eylül 17, 2009 Paylaş Mesaj tarihi: Eylül 17, 2009 herkes sadece kendi dosyasina erissin istiyosan ACL implemente etmen gerekiyor. Yani adam login olmussa ve o dosyaya erisim hakki varsa cekecek. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
wildpervert Mesaj tarihi: Eylül 17, 2009 Paylaş Mesaj tarihi: Eylül 17, 2009 o zaman şöle yapıcaksın. yine her pathin bir id si olucak, fakat lakin, sen bu linkleri koyarken, idler le date() i ortak kullanıp bir encryption yaratıcaksın, dolayısıyla herseferinde farklı idler üretilmiş olucak, hem de random deneyerek bulunamayacak. birde bu dl id sini gönderip dl ettirdiğin php ye user control koyarsan, sanırsam olur. not: herkes sadece kendi dosyasına mı erişicek? o zaman user control yapıcaksın, dosyaların tutulduğu yere bir de user id ekleyip, check edersen olur, daha kolay degil mi sanki öle? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
riglous Mesaj tarihi: Eylül 17, 2009 Paylaş Mesaj tarihi: Eylül 17, 2009 .htaccess dosyasi araciligiyla ayarlayabiliyosun. Request edilen adres once bu dosyada isleniyor; /root/999 -> /root/download.php?id=999 gibi bir isleme donusturebiliyosun ve kullanici tarafinda gozuken sadece /root/999 oluyor. Her gelen dosya isminin checksum'ini alirsin, daha sonra download.php yine klasorun icindeki dosyalarin tek tek checksum'larini alip kontrol eder, birebir tutan buldugunda da request'e cevap verir. Tabi dogrudan ismini de MD5'e cevirerek de yapabilirsin... Algoritmasi sana kalmis. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Dark_Soul Mesaj tarihi: Eylül 17, 2009 Konuyu açan Paylaş Mesaj tarihi: Eylül 17, 2009 aslında bir proje şirketi için upload-download sayfası hazırlıyorum php ile. upload.php sayfasındaki kod şu şekilde $path = 'temp/'; $path =$path.basename($_FILES['file']['name']); $dosya=basename($_FILES['file']['name']); if(move_uploaded_file($_FILES['file']['tmp_name'], $path)){ echo "<b>".$dosya."</b>". " dosyasi gonderildi"; $dosya = $filename; .... nese bundan sonra işte db ye kayıt kodlari geliyor. birde download.php var burdada adamın upload ettigi dosyalari böle string şeklinde göstermek istiyorum. Şöyle birşey buldum sanırım her upload işleminden sonra dosya ismine 32 karakterlik bir string atıyor $hash=hash('md5', $filename); şimdi her upload edilen dosya için $filename değişkeniyle dosya adına 32 karakterlik string atayıp sonra,download.php de klasördeki dosyalari listeletirsek ......./21212454545222(32 kar. varsayalım) gibi mi gözükecek? Birde adam buna tıkladıgında sorunsuz indirebilcekmi dosyasını? Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
di Mesaj tarihi: Eylül 18, 2009 Paylaş Mesaj tarihi: Eylül 18, 2009 Degerleri nasil uretecegin sana kalmis. Sonuc olarak md5 gibi tek tarafli bir gosterim olacak. Ister string'ler yarat md5'ini al, ister random string'ler yarat oyle kullan. Isi en optimum sekilde soyle halledersin (saniyorum); users tablosu : id - username - password - ... files tablosu : id - filename - hash access tablosu : user_id - file_id ( bu ikisine index veriyosun ucuyo ) Ornek olayda; /var/www/ : document root'un. /var/files : dosyalarinin bulundugu dizin. www altinda olmamasi direkt erisimi engellemis durumda. * belli araliklarla /var/files altindaki dosyalari listeleyip tablonu update ediyosun. * bir kullanicinin erisimlerinin duzenlediginde access tablonu update ediyosun. * bir kullanici giris yaptiginda access tablosundan verileri cekip dosyalari hash'lerine gore listeleyip download.php?hash seklinde listeletiyosun. Simdi diyelimki adam geldi, login olup bir linkte tikladi; * link tiklaninca gidip hash tablosundan dosya adini/konumunu oku. Dosyayi fopen ile acip belli boyutlarda oku ve ayni anda ekrana bas. Burada fopen'dan once ekrana gerekli header'i basacagin icin dosya ya dirkt acilacak ya da download penceresi cikacak. Link to comment Sosyal ağlarda paylaş Daha fazla paylaşım seçeneği…
Öne çıkan mesajlar