PDA

View Full Version : سوال: محدود سازی حجم و نوع فایل آپلود



Iran58
سه شنبه 11 اردیبهشت 1397, 09:21 صبح
سلام
الف) چگونه می توانم در کاربر را محدود کنم که از چه نوع فایلی را آپلود کنه(مثلا png,rar)
ب)چگونه می توانم کاربر را در حجم آپلود کردن محدود کنم مثلا حداکثر 2مگ آپلود کند

<label for="file">Filename:</label>
<input type="file" name="file" id="file" />

باتشکر

jaykob
سه شنبه 11 اردیبهشت 1397, 09:42 صبح
سلام



#region بررسی حجم فایل
int maxContentLength = 2000000;

if (file.ContentLength > maxContentLength)
{
return Tuple.Create(0, "حجم فایل شما بیش از 2 مگابایت است . لطفا بعد از تصحیح دوباره سعی کنید");

}
#endregion


#region بررسی نوع فایل
string[] allowedFileExtensions = new string[] { ".jpg" , ".rar" , ".zip" , ".pdf" , ".xls" , ".doc" , "docx",".png" };
if (!allowedFileExtensions.Contains(file.FileName.Sub string(file.FileName.LastIndexOf('.'))))
{
return Tuple.Create(0, "فرمت فایل شما غیر مجاز است");

}
#endregion

Iran58
سه شنبه 11 اردیبهشت 1397, 10:04 صبح
سلام
کد بالا را در کنترلر باید استفاده کنم؟!

RIG000
سه شنبه 11 اردیبهشت 1397, 10:23 صبح
سلام
کد بالا را در کنترلر باید استفاده کنم؟!
هر کلاسی که بیزینس شمار رو چک میکنه ، کنترلر هم یک کلاس هست و . و اگر برای این کنترلر بیزینس هم دارید که عالی .

jaykob
سه شنبه 11 اردیبهشت 1397, 10:26 صبح
بسته به نظر خودتون هست . من معمولا یک کلاس می نویستم برای آپلود فایل که ورودی فایل و آدرس ذخیره سازی رو می گیره و پاسخ هم وضعیت آپلود شدن یا خطا رو می ده . ولی شما می تونید داخل اکشن مورد نظر خودتون استفاده کنید

مهدی کرامتی
شنبه 15 اردیبهشت 1397, 16:32 عصر
سلام



#region بررسی حجم فایل
int maxContentLength = 2000000;

if (file.ContentLength > maxContentLength)
{
return Tuple.Create(0, "حجم فایل شما بیش از 2 مگابایت است . لطفا بعد از تصحیح دوباره سعی کنید");

}
#endregion


#region بررسی نوع فایل
string[] allowedFileExtensions = new string[] { ".jpg" , ".rar" , ".zip" , ".pdf" , ".xls" , ".doc" , "docx",".png" };
if (!allowedFileExtensions.Contains(file.FileName.Sub string(file.FileName.LastIndexOf('.'))))
{
return Tuple.Create(0, "فرمت فایل شما غیر مجاز است");

}
#endregion










بهترین راه چک کردن نوع فایل آپلود شده بررسی کردن Mime Type فایل آپلود شده است.

hakim22
شنبه 15 اردیبهشت 1397, 21:18 عصر
تا زمانی که فایل به سرور به طور کامل آپلود نشده باشه مشخصات اون قابل شناسایی نیست.
برای کنترل فایل قبل از آپلود می توانید از پلاگین های جاوا اسکریپت استفاده کنید فقط توجه کنید که این قابلیت ها روی مرورگرهای HTML5 کار میکنه و در مرورگرهای قدیمی File API وجود نداره.

یک نمونه

http://plugins.krajee.com/file-folder-upload-demo