طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

اعتبارسنجی تصاویر در PHP هنگام آپلود


اعتبارسنجی تصاویر در PHP هنگام آپلود

قابیت آپلود فایل نیاز به یک سری اعتبارسنجی (validation) های پایه برای پاکسازی مقادیر ورودی کاربر است.

امکان اکسپلویت کردن قسمت آپلود فایل با کدهای مخربی مثل شلر های php بسیار زیاد است.بنابراین پیاده سازی نادرست این بخش می تواند آسیب پذیری امنیتی را افزایش دهد.

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

اگر قصد داریم در فرم از کاربر فایل pdf و یا jpg دریافت کنیم و همچنین حجم و موارد غیره را بررسی کنیم, نیاز است تمامی این ها را با کدنویسی سمت سرور (تاکید می کنم اعتبارسنجی سمت کلاینت کافی نیست و قابل دور زدن هست) اعتبارسنجی کنیم.

برای آشنایی با اعتبارسنجی در php این آموزش را نیز مطالعه کنید

من یک فرم HTML به همراه input آپلود فایل ایجاد کردم. زمانی که فرم سابمیت می شود, باینری تصویر برای اعتبارسنجی سمت سرور (server-side) به php ارسال می شود.

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

 

اعتبارسنجی تصاویر در PHP (سمت سرور) هنگام آپلود جنبه های زیر را بررسی می کند

  • اگر فایل خالی نباشد یعنی فایلی از سمت کاربر ارسال شده باشد
  • اگر پسوند فایل جز یکی از .jpg, .png, .jpeg ها باشد.
  • اگر حجم فایل کمتر یا مساوی ۲مگابایت باشد.
  • اگر ابعاد تصویر در ۳۰۰x200 باشد.

 

فرم HTML به همراه input فایل

این فرم شامل ورودی نوع فایل است که به کاربر اجازه انتخاب فایل برای آپلود را می دهد. با سابمیت شدن این فرم, داده های فایل به سمت php ارسال می شود تا بعد از اعتبارسنجی آپلود شود.

 

حتما بخوانید  ساخت سیستم صدور فاکتور با php و mysql

کد PHP برای اعتبارسنجی و آپلود عکس

در این کد php , ما نوع فایل (file-type) , حجم (size) و ابعاد (dimension) را قبل آپلود اعتبارسنجی می کنیم. داده های فایل آپلود شده مانند نام, اندازه, مسیر موفقت در آرایه سراسری $_FILES[‘image_file’] قرار دارند.

تابع move_uploaded_file در php برای آپلود فایل با دسترسی به داده های آرایه سوپرگلوبال $_FILES استفاده می شود. همچنین از تابع getimagesize() برای دیافت اطلاعات حجم فایل به منظور اعتبارسنجی تصویر استفاده کردیم.

من پسوندهای مجاز فایل تصویر را در یک آرایه قرار داده و پسوند فایل های آپلود شده را با این آرایه و انجام می دهم (استفاده از تابع in_array برای بررسی یک رشته در یک آرایه). شما می توانید این آرایه را بنابر نیاز خود تغییر و پسوندهای جدید اضافه کنید.

بعد از اعتبارسنجی موفق, از تابع move_uploaded_file() در php برای ذخیره تصویر یا فایل در مسیر مشخص شده, بهره می بریم.

خروجی – اعتبارسنجی تصاویر در PHP هنگام آپلود

اسکرین شات زیر به شما دو پیام موفق و خطا هنگام اجرای مثال اعتبارسنجی تصاویر در PHP را نشان می دهد.

حتما بخوانید  ساخت دسته بندی با PHP (+n زیرشاخه)

اعتبارسنجی تصاویر در PHP هنگام آپلود

امیدوارم از آموزش اعتبارسنجی تصاویر در PHP استفاده مفید را برده باشید.

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

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

اگر مفید بود, لطفا به اشترک بگذارید تا دوستان دیگر نیز بهره ببرند

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان php و امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

آموزش طراحی وب سایت

نظر کاربران عزیز

آموزش های آنلاین در چه زمینه ای تهیه کنیم ؟

  • آموزش جاوااسکریپت و جی کوئری (45%, 10)
  • آموزش ساخت ربات تلگرام (45%, 10)
  • آموزش بوت استرپ 4 (9%, 2)

تعداد رای ها : 22

Loading ... Loading ...

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

مجوزهای ما


logo-samandehi نماد اعتماد الکترونیک

دانلود کتاب

عضویت در خبرنامه