http://pecl.php.net/package/uploadprogress
Yukarıdaki adresten son olan bir versionu indirmelisin yada..
wget http://pecl.php.net/get/uploadprogress-1.0.1.tgz tar xvzf uploadprogress-1.0.1.tgz cd uploadprogress-1.0.1 phpize ./configure make make installBu işlemleri yaptıktan sonra en son make install dediğinde aşağıdaki çıktıyı alacaksın
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20060613/.Bunu kopyala lazım olacak .. Sonra php.ini dosyanı açıp editlememiz gerekecek.. Peki benim server da bir çok php.ini dosyası var hangisi gerçeği diye soruyorsan onuda aşağıdaki kod ile bulacaksın..
php -i | grep iniDüzenlemek için açtıktan sonra extension_dir bölümünü bulup yolunu yukarıda bize verilen değeri giriyoruz. Yani
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613/"Değerleri girdikten sonra php.ini dosyamızı kapatmadan eklememiz gereken bir kod daha var oda aşağıda verdiğim kodu ekleyeceğiz. ( Nereye Eklediğiniz fark etmez )
extension=uploadprogress.soKaydedip çıkıyoruz ve Apache yi restart yapıyoruz.
Kurulu olup olmadığını boş bir php sayfasına phpinfo(); yazıp görebiliriz . Böylelikle uploadprogress i kurmuş olduk.
Şimdi bu uploadprogress i nasıl kullanacağımıza gelelim
Daha önce kendim hazırladığım bir sistemin kodlarını vereceğim sana eminim çok faydası olacaktır

Öncelikle jQuery kütüphanesini kullandığım için direkt kodları o şekilde vereceğim..
dosya.php
if (@$_GET['id']) {
echo json_encode(uploadprogress_get_info($_REQUEST['id']));
exit();
}
if (@$_POST['UPLOAD_IDENTIFIER'])
exit();
$uuid = uniqid();<script>
var progress_key = '<?=$uuid;?>';
function beginUpload() {
var i = setInterval(function() {
$.getJSON("dosya.php?id=" + progress_key, function(data) {
if (data == null) {
clearInterval(i);
location.reload(true);
return;
}
var percentage = Math.floor(100 * parseInt(data.bytes_uploaded) / parseInt(data.bytes_total));
$("#uploadprogressbar").progressBar(percentage);
var yazi = 'Toplam Boyut : <b>'+bytes(data.bytes_total)+'</b> - Yüklenen : <b>'+bytes(data.bytes_uploaded)+'</b>';
#yazi olarak verdiğim değişkene veriler gelir gelmez byteup kimlikli div e yazdırıyorum böylelikle her kademede hem yüklediği kb ı hemde toplam boyutu yazdırmış oldum.
$("#byteup").html(yazi);
});
}, 1500);
return true;
}
</script>İki koduda tek php dosyasına ekliyorsun ve aynı sayfaya bir tane form oluşturup post işlemi yaptırıyorsun. Tabi post işlemini yaptırırken onSubmit="beginUpload();" unutmayalım
Kısaca anlatmaya çalıştım bir upload progress i kendimiz nasıl yapabiliriz Hazırları bana göre değil ben kendim yapmak istiyorum diyenler için birebir umarım bu yazıdan bir çok kişi faydalanır..
Takıldığınız bir yer olursa konuya yazın cevap vereyim arkadaşlar
Saygılar..
Mesut Eyrice
(önemli olan yerleri kalın ile belirttim arkadaşlar.)