Arkadaşlar Merhaba

Curl İle RapidShareden Kendi Sunucuma Download Yapıyorum Yanlız Download İşlemini Gerçekletirirken Aynı Anda Bir Yüzde Çubuğu Yapmak İstiyorum

Yanlız Sorun şuki Bildiğiniz Gibi Dosya İndirme İşlemi Bitmeden Herhangi Bir Mesaj Vermiyor Bunu Aşmanın En Basit Yolu Nedir Bu Engeli Nasıl Aşa Bilirim Bir Kaç Yöntem Denedim Ama Bir Sonuca Ulaşamadım.

Kodlarım Bunlar

indir.php
<?PHP 
include "fonksiyon.php";

		$link = $_POST['url'];
		$test_url=$link;
		$ApiURL=RapidApiURL($test_url);
		$Sonuc=RapidFileCheck($ApiURL);

$link = "http://".$ayar["rapid"]["user"].":".$ayar["rapid"]["pass"]."@rs".$Sonuc['ServerID'].".rapidshare.com/files/".$Sonuc['DosyaID']."/".$Sonuc['DosyaAdı']."";
	include("class.progress_bar.php");

$pbar = new progress_bar('pbar',1,500,FALSE); //İlerleme Çubuğu İçin Sınıfı Başlatıyoruz

$num_tasks = $Sonuc['DosyaBoyutu']; // Çubuğu Dosya Boyutuna Göre Ayarlıyoruz
$pbar->create(); // Porgres Barı Oluşturuyoruz

for($cur_task = 0; $cur_task <= $num_tasks; $cur_task++)
{
	usleep(10000); // 10000 microsaniye geçiktirme ile başlatıyoruz
	flush();
	$pbar->set_percent_adv($cur_task,$num_tasks); 
}
	indir($link,$Sonuc['DosyaAdı'],$ayar["dizin"]["yol"]); // İndirme İşlemi...
?>
fonksiyon.php
include "ayar.php";
function RapidApiURL($URL)
{
    //Url içerisinden dosya Id ve adını almamızı sağlayacak deseni tanımlıyoruz.
    $desen="/files\/(.*)\/(.*)/";
    preg_match($desen,$URL,$File);
    $RapidApi="http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=checkfiles_v1";
    $RapidApi.="&files=" .$File[1]; //Dosya ID
    $RapidApi.="&filenames=" . $File[2];// Dosya Adı
    return $RapidApi;
}

function RapidFileCheck($URL)
{
   $ch = curl_init();// CURL başlatılıyor
   curl_setopt($ch, CURLOPT_URL, $URL); // Adrese Curl ile bağlanıyor
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
   $string = curl_exec($ch); // Adresten dönen değer değişkene aktarılıyor.
   curl_close($ch);
   $string=split(",",$string);// Dönen sonuç ',' karakteri ile bölünerek array tipli bir değişkene aktarılıyor.
  
   Switch ($string[4])// DosyaDurumu
   {
       Case 0: $Sonuc['durum']=0;break;
       Case 1: $Sonuc['durum']=1;break;
       Case 2: $Sonuc['durum']=1;break;
       Case 3: $Sonuc['durum']=0;break;
       Case 4: $Sonuc['durum']=0;break;
       Case 5: $Sonuc['durum']=0;break;
       Case 6: $Sonuc['durum']=1;break;
   }
   if ($Sonuc['durum']=1){
	   $Sonuc['DosyaID']		="" . $string[0] . "";
	   $Sonuc['DosyaAdı']		="" . $string[1] . "";
	   $Sonuc['DosyaBoyutu']	="" . byteFormat($string[2], "KB") . "<br />";
	   $Sonuc['ServerID']		="" . $string[3] . "";
	   $Sonuc['DosyaDurumu']	="" . $string[4] . "<br />";
	   $Sonuc['KısaHostAdı']	="" . $string[5] . "";
   }
   return $Sonuc;
}
function indir($adres,$isim,$yol) {
	$ch = curl_init($adres);
	$fp = fopen($yol."/".$isim, "w");

	curl_setopt($ch, CURLOPT_FILE, $fp);
	curl_setopt($ch, CURLOPT_HEADER, 0);

	curl_exec($ch);
	curl_close($ch);
	fclose($fp);
}
function byteFormat($bytes, $unit = "", $decimals = 2) {
    $units = array('B' => 0, 'KB' => 1, 'MB' => 2, 'GB' => 3, 'TB' => 4, 
            'PB' => 5, 'EB' => 6, 'ZB' => 7, 'YB' => 8);
    $value = 0;
    if ($bytes > 0) {
       
        if (!array_key_exists($unit, $units)) {
            $pow = floor(log($bytes)/log(1024));
            $unit = array_search($pow, $units);
        }

        $value = ($bytes/pow(1024,floor($units[$unit])));
    }

    if (!is_numeric($decimals) || $decimals < 0) {
        $decimals = 2;
    }
 
    return sprintf('%.' . $decimals . 'f '.$unit, $value);
  }
form.php
<p align="center"><span class="header">File Downloader | Coded By MelihBuyuk</span></p><hr>

<form action="indir.php" method="post">
<table align="center">
<tr><td><input type="text" class="input" name="url" size="70"></td><td>&nbsp;</td></tr>
<tr><td>&nbsp;</td><td><input type="submit" value="yukle"  class="inputbuton" name="urlpost"></td></tr>
</form>
ve Son Olarakta

class.progress_bar.php
<?php
class progress_bar
{
	var $name;		
	var $percent; 
	var $width;    

	
function progress_bar($name = 'pbar',$percent = 1,$width = 100,$auto_create = TRUE){
		
		$this->name = $name;

		$this->percent = $percent;

		$this->width = $width;
		if($auto_create)
		{
			$this->create();
		}
}

function create(){ ?>
		<div align="center">
		  <center>
				<table cellspacing="0" cellpadding="0" style="FONT-FAMILY: Tahoma; FONT-SIZE: 11px;">
				<tr><td></td>
				<td><div style='border:#BBBBBB 1px solid; width:300px; height:10px;'>
				<div id="progress" style='background-color:#000099; margin:1px; width:0%; height:9px;'>
				<img name="<? echo($this->name)?>" border="0" src="http://www.realestate-in-fortworth.com/admin/images/fill.gif" width="<? echo(($percent * .01) * $width);?>" height="11">
				</div>
				</div></td><td></td><tr>
				<tr>
				<td align="left" id="received">0 KB</td>
				<td align="center" id="percent">0%</td>
				<td align="right" id="speed">0 KB/s</td>
				</tr></table>
			</center>
		</div>
<?
	}

function set_name($name)
	{
		$this->name = $name;
	}

function set_percent($percent)
	{
		$this->percent = $percent;

		echo('<script>document.images.' . $this->name . '.width = ' . ($this->percent / 100) * $this->width . '</script>');
	}
function set_percent_adv($cur_amount,$max_amount)
	{
		$this->percent = ($cur_amount / $max_amount) * 100;
		echo('<script>document.images.' . $this->name . '.width = ' . ($this->percent / 100) * $this->width . '</script>');
	}

function set_width($width)
	{
		$this->width = $width;
	}
}

?>
Kodlar Ve Yazı Biraz uzunca Oldu Ama Umarım Ne Yapmak İstediğimi Anlamışsınızdır

Bu Konuda Epey Sıkıştım Şimdiden Teşekkürler