PDA

View Full Version : سوال: بک آپ گیری از پوشه ی آپلود فایل



ravand
دوشنبه 01 آذر 1389, 21:32 عصر
من یه فرم آپلود فایل دارم که عکس رو به پوشه ارسال می کنه . حالا من می خوام از پوشه ی عکس یه بک آپ بگیرم طوری که بعدا هر وقت خواستم بک آپ بگیرم عکس هایی که جدید در پوشه قرار گرفته به فایل بک آپ من اضافه بشه و من مجبور نباشم دوباره تمام عکس ها رو با هم دانلود کنم.
:متفکر:

alonemm
سه شنبه 02 آذر 1389, 19:54 عصر
میتونی از قسمت کنترل پنل هاست در قسمت فایل منیجر هم استفاده کنید.

ravand
سه شنبه 02 آذر 1389, 21:22 عصر
میتونی از قسمت کنترل پنل هاست در قسمت فایل منیجر هم استفاده کنید.

شما حرفتون رو خلاصه گفتید و من درست متوجه نشدم میشه یه کم بیشتر در موردش توضیح بدید؟

نظرتون در مورد این چیزی که میگم چیه؟ من یه پوشه ای رو مشخص می کنم و به برنامه ام معرفی می کنم که عکس داخلش ریخته بشه و بک آپ گرفته بشه . بعد که خواستم دوباره از عکس های جدید بک آپ بگیرم چک بکنه ببینه اگه عکس هم نامی وجود داره در نظر نگیره و عکس جدید رو بشناسه. و دانلود کنه.
یعنی یه شرطی بسازم که اگه نام عکس تکراری بود از شرطی که ساختم خارج بشه. و بره سراغ نام عکس دیگه و اون رو چک کنه.:متفکر:

funpatogh
جمعه 05 آذر 1389, 16:03 عصر
یک همچین چیزی توی ذهنم آمد تست کنید ببینید جئاب میگیرید



<?php
$dir="images";
$fp=opendir($dir);
$last_backup=10*24*60*60; // 10 roz pish
// Or
$last_backup=mktime(0,0,0,11,10,2010); //time stamp for 2010/11/10
while($file=readdir($fp)){
if($file!="." && $file!=".."){
if(time()-fileatime("$dir/$file")>$last_backup){
$list[]=$file;
}
}
}

if($list){

}

?>

فولدر عکس هارو images مشخص کردم
بعد باید موقع بک آپ گیری تاریه اون لحظه رو نگه داری توی بانک یا هر جا که دوست داری
توی این کد last_backup همون تاریخ رو مینویسی
یا میتونی تقریبی زمان بدهید که مثلا آخرین بک اپ ما 10 روز پیش بوده
بعد هر فایلی که شما میریزی توی فولدر یک تاریخ آخرین دستیابی داره (fileatime)
یک حلقه زدم لیست فایل ها رو گرفتم
بعد گفتم اگر زمان حال - زمان آپلود فایل بزرگتر از زمان آخرین بک اپ بود یعنی فایل جدید اپلود شده
پس اسمش بره توی یک آرایه به نام list
بعد توسط کلاس های زیپ کردن میتونی لیست این فایل ها رو زیپ کنی مثلا 1.zip بعد دانلودش کنید

binyaft
جمعه 05 آذر 1389, 17:24 عصر
if ($handle = opendir('images')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if(file_exists('backup/'.$file.'')){

}
else
{
file_put_contents('backup/'.$file.'',file_get_contents('images'.'/'.$file));
}
}
}
closedir($handle);
}
پوشه images پوشه ای هست که تصاویر در اون قرار داره و پوشه backup هم برای پشتیبان گیری هست
موفق باشید