JBolouri
4 سال پیش توسط JBolouri مطرح شد
5 پاسخ

حذف خودکار فایل های موقتی

سلام دوستان..

کاربرای سایت از طریق فرم بخصوصی، یه سری فایل رو آپلود میکنن...
میخوام این فایلا از طریق ajax و بصورت موقت یه جایی آپلود بشن و بعد که دکمه submit فرم رو زدم فایلا برن جایی که میخوام و موقتی ها پاک بشن..

ولی خب یه حالتایی هم پیش میاد مثلا اینکه کاربر فایل رو توی فرم آپلود میکنه (با ajax این کار انجام میشه) بعدش که آپلود شد به هر دلیلی روی submit نمیزنه و منصرف میشه.. اون فایل موقتی تو پوشه temp که تعریف کردم نمیخوام بمونه و فایلای بیخودی هی انباشت بشه..

چجوری میشه این مشکل رو حلش کرد بنظرتون؟

میشه فایلا رو زمانبندی کرد که بعد از ایجاد مثلا نهایتا 5 دقیقه بعد بصورت خودکار حذف بشن؟


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
1

سلام

خود فایل رو که هیچ وقت نمیشه زمان بندی کرد که خودکار حذف بشه. باید یک اسکریپتی برای پاک کردن تمام فایل های دایرکتوری temp تون داشته باشید که بصورت خودکار در زمان های مشخصی اجرا بشه.

برای این کار لاراول هم خیلی کار رو راحت کرده. کافیه یک کامند با وظیفه حذف تمام فایل های داخل این پوشه ایجاد کنید و بعد با استفاده از Task Scheduling در لاراول اون کامند رو بعنوان مثال هر شب ساعت ۰۳:۰۰ بامداد تنظیم کنید که اجرا بشه. طبیعتا برای این کار نیازمند استفاده از Cron job و احتمالا Supervisor هستید که توضیحاتش در مستندات رسمی لاراول هم بصورت کامل اومده:

https://laravel.com/docs/7.x/scheduling
https://laravel.com/docs/7.x/artisan#writing-commands


سهیل حیدری
@hbr 4 سال پیش مطرح شد
1

با سلام به نظر من سناریو رو عوض کنید یعنی اینکه اول کاربر اطلاعات فیلدی(متنی) رو بارگزاری کنه و بعد که بارگزاری کردش یعنی post کرد و داخل دیتابیس ثبت شدش باکس آپلود فایل ظاهر شه و فایل هاشو تک تک بارگزاری کنه و این تک تک بارگزاری کردن به ازای هر فایل آدرس و اسم فایلتون تو دیتابیس ذخیره شه و براش هم امکان ویرایش بزارین الان همه سایت ها دارن همین کارو میکنن


JBolouri
@javadbolouri72 4 سال پیش مطرح شد
0

@khosravi424

ممنون از راهنماییتون..
اینم سناریوی خوبیه..
🙏🌷


Mohsen Etmd
@mohsenetmd 4 سال پیش مطرح شد
1

باید از کرون جابز استفاده کنید.


JBolouri
@javadbolouri72 4 سال پیش مطرح شد
0

@mohsenetmd

بله آقای یگانه هم بالا گفتن این کارو کنم..
ممنون 🙏🌷


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام