clove-pink
کاربر فعال
سلام
دوستام من می خوام که در برنامه نویسی با php و آپلود فایل ، یک progress bar ایجاد کنم که میزان آپلود رو نمایش بده و این کار تنها با php قابل انجام نیست.
طبق تحقیق های من یک راه با استفاده از فریم ورک APC هست که من کلی روش کار کردم و آخر دیدم که سرور من اون رو حمایت نمی کنه و مسئولش هم گفت نصب نمی کنه
یه راه دیگه استفاده از ای جکس هست که من تا حالا باهاش کار نکردم و اصلا نمی دونم چه جوری با php استفاده کنم.
منتها من اون کدی که عمل نمایش میزان فایل آپلودی رو نشون می ده پیدا کردم.
اگه دوستان بهم یه توضیحی راجع بهش بدن و اینکه چه جوری ازش استفاده کنم ممنون می شم!!!!
دوستام من می خوام که در برنامه نویسی با php و آپلود فایل ، یک progress bar ایجاد کنم که میزان آپلود رو نمایش بده و این کار تنها با php قابل انجام نیست.
طبق تحقیق های من یک راه با استفاده از فریم ورک APC هست که من کلی روش کار کردم و آخر دیدم که سرور من اون رو حمایت نمی کنه و مسئولش هم گفت نصب نمی کنه
یه راه دیگه استفاده از ای جکس هست که من تا حالا باهاش کار نکردم و اصلا نمی دونم چه جوری با php استفاده کنم.
منتها من اون کدی که عمل نمایش میزان فایل آپلودی رو نشون می ده پیدا کردم.
اگه دوستان بهم یه توضیحی راجع بهش بدن و اینکه چه جوری ازش استفاده کنم ممنون می شم!!!!
کد:
//Class to store read info
class ReadStatus{
var $is_dir_error = 0;
var $open_dir_error = 0;
var $active = 0;
var $uploaded_files = 0;
var $bytes_uploaded = 0;
}
// Return the current size of the $_GET['temp_dir_sid'] - flength file size.
function GetBytesRead($temp_dir, $upload_id){
$read_status = new ReadStatus;
$temp_upload_dir = $temp_dir . $upload_id . '.dir';
$flength_file = $temp_dir . $upload_id . '.dir/' . $upload_id . '.flength';
if(is_dir($temp_upload_dir) && file_exists($flength_file)){
if($handle = opendir($temp_upload_dir)){
while(false !== ($file_name = readdir($handle))){
if(($file_name != '.') && ($file_name != '..') && ($file_name != $flength_file)){
$read_status->bytes_uploaded += filesize($temp_upload_dir . '/' . $file_name);
$read_status->uploaded_files++;
}
}
closedir($handle);
$read_status->active = 1;
if($read_status->uploaded_files > 0){ $read_status->uploaded_files -= 1; }
}
else{ $read_status->open_dir_error = 1; }
}
else{ $read_status->is_dir_error = 1; }
return $read_status;
}