Nasıl dosya indirme izlerim

6 Cevap php

Ben bir flash player içinde mp3s oynayan bir web sitesi var. Bir kullanıcı tıkladığında 'play' flash player otomatik olarak bir mp3 indirir ve oynamaya başlarsa.

Belirli bir şarkı klip (veya herhangi bir ikili dosya) indirildi kaç kez izlemek için kolay bir yolu var mı?


Is the play link a link to the actual mp3 file or to some javascript code that pops up a player?

If the latter, you can easily add your own logging code in there to track the number of hits to it.

If the former, you'll need something that can track the web server log itself and make that distinction. My hosting plan comes with webalizer, which does this nicely.

Bu javascript kodu, bu yüzden o cevaplıyor.

Ancak, (ana anahtarlama olmadan) başka bir yöntemi kullanarak indirmeleri izlemek için bilmek güzel olurdu.

6 Cevap

Komik şey i 2 gün önce tüm müzik için bir php galeri medya yazdı. Ben benzer bir sorun vardı. Oyuncu için http://musicplayer.sourceforge.net/ kullanarak Im. ve playlis php üzerinden inşa edilir. Tüm müzik istek oraya gitmek? dosya xfer.php adında bir script = WHATEVER

$filename = base64_url_decode($_REQUEST['file']);
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename='.basename($filename));
header("Content-Transfer-Encoding: binary");
header('Content-Length: '. filesize($filename));

//  Put either file counting code here. either a db or static files

//

readfile($filename);  //and spit the user the file


function base64_url_decode($input) {
    return base64_decode(strtr($input, '-_,', '+/='));
}

Ve dosyaları çağırdığınızda gibi bir şey kullanabilirsiniz

function base64_url_encode($input) {
     return strtr(base64_encode($input), '+/=', '-_,');
}

http://us.php.net/manual/en/function.base64-encode.php

Bir mp3 dosyası veya ne olursa olsun olması gerçek bağlantı gerektiren bazı javascript veya flash player (örneğin JW oyuncu) kullanıyorsanız son Linke gibi bir şey olur bu yüzden, size "metin" & type =. Mp3 "ekleyebilirsiniz www.example.com/xfer.php?file=34842ffjfjxfh&type=.mp3 ". Bu dosya linki etkilemeden bir mp3 uzantısı ile biten bu şekilde gibi görünüyor.

Httpd log dosyaları kullanın. Kurulum http://awstats.sourceforge.net/

Bash kullanın:

grep mp3 /var/log/httpd/access_log | wc

Hatta ile çalışıyor QueryString dubayou içine *. Mp3 istekleri dönüştüren bir Apache. Htaccess yönergesi kurmak olabilir. Bu doğrudan isteği tutmak için zarif bir yolu olabilir ve yine tepki içine işlevini oturum slipstream'e mümkün olabilir.

Oyun gerçek mp3 dosyası ya da bir çalar açılır bazı javascript kodu için bir bağlantı bağlantı var mı?

Ikincisi ise, bunu kolayca hit sayısını izlemek için orada kendi günlük kodu ekleyebilirsiniz.

Eski ise, web sunucusu kendisini log ve bu ayrım yapmak izleyebilirsiniz şey gerekir. Benim hosting planı bu güzel yapar webalizer ile birlikte geliyor.

Müzik kütüphanesi için bir veritabanı var mı? Mp3 indirirken çalışan herhangi bir sunucu kodu varsa o zaman çalma sayısını artırmak için orada ekstra kod ekleyebilirsiniz. Ayrıca javascript çalma sayısını artırmak için ikinci bir talepte olabilir, ama bu insanlar / robotlar yanlış sayıları artan yol açabilir.

Ben bir internet radyo sitesi için çalışmak için kullanılan ve her şarkı oynanan zaman izlemek için ayrı tablolar kullanılır. Bizim akışları perl script çalışıyor icecast tarafından desteklenmektedir, böylece bir veritabanı isteğinde yeni bir parça çalmaya başladım her zaman tetikleyen edildi. Sonra bir şarkının kimliği oyun günlüğüne Kaç kere saymak için bir sorgu aday olacağını çalma sayısını hesaplamak için.