0

سبد خرید شما خالی است.

طراحی سایت در اصفهان, سئو سایت اصفهان, ساخت سایت اصفهان, طراحی حرفه ای سایت اصفهان, بهینه سازی سایت , بازاریابی و تبلیغات اینترنتی 09133886881 احمدپور

آموزش آپلود فایل در php

نویسنده شیما قطره سامانی
امتیاز مطلب
تعداد بازدید 262
تاریخ بروزرسانی ۱۹ بهمن ۱۳۹۶

آپلود فایل در php

معمولا در بعضی از سایت ها لازم می شود که فرمی را در سایت تعبیه نموده که توسط آن کاربران بتوانند فایل های مورد نظر خود را در سایت آپلود نمایند ( از جمله آپلود فایل رزومه ، عکس و…). حال قبل از آموزش آپلود فایل در php و کدنویسی فرم ارسال فایل لازم است که ابتدا مطمئن شوید که تنظیمات آن فعال است. برای این کار اول باید فایل php.ini را بررسی نمایید و file_uploads را به حالت on قرار دهید. روش دسترسی به فایل php.ini در لوکال هاست و cpanel در ادامه آموزش داده شده است.

 

آموزش آپلود فایل در phpآموزش آپلود فایل در php

 

Php.ini  در لوکال هاست (نرم افزار Xamp)

این فایل در وب سرور Xampp با توجه به نسخه های مختلف ، عموما در مسیر های زیر وجود دارد:

\xampp\php\php.ini
\xampp\apache\bin\php.ini
\xampp\etc\php.ini

 

"
    Select image to upload:
    <input type=

 

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

درون تگ input ، مشخصه type را برابر file قرار داده ایم تا اعلام کنیم که نوع ورودی، به صورت فایل می باشد. بنابراین درون فرم، یک دکمه browse به کاربر نمایش داده می شود تا با آن بتواند فایل مورد نظر را از کامپیوتر خود انتخاب نماید.

upload file php

آموزش آپلود کردن فایل در فرم php

 

کدنویسی قسمت php

فایل upload.php را ایجاد کنید و قطعه کد زیر را در آن قرار دهید.

 

$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}

 

توضیحاتی در مورد کد بالا

$target_dir = “uploads/” دایرکتوری که فایلها در آن ذخیره می شوند را مشخص میکند.

$target_file   مسیر فایل آپلود شده را مشخص می نماید.

$imageFileType پسوند فایل را نگه میدارد.

$_FILES[“fileToUpload”][“name”] نام اصلی فایل در سمت کاربر را در خود دارد.

$_FILES[“fileToUpload”][“size”]سایز فایل رابه بایت نمایش می دهد.

$_FILES[“fileToUpload”][“tmp_name”] نام فایل موقت را دارد.

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

 

امنیت در آپلود فایل در php

"امنیت

بررسی موجود بودن فایل از قبل

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

 

// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}

 

محدود کردن سایز فایل

در کد زیر تعیین کرده ایم که اگر فایلی که کاربر آپلود می کند بیشتر از 300KB بود برای آن پیغام “فایل شما بزرگ است” را به نمایش در بیاورد.

 

// Check file size
if ($_FILES["fileToUpload"]["size"] > 300000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}

 

محدود کردن نوع فایل

در کد زیر بیان کرده ایم که اگر کاربر هر نوع فایلی به جز  GIF, JPG, JPEG, PNG را آپلود نمود برای او پیغام خطا نمایش داده شود.

 

// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}

 

لذا کد کامل شده ی امنیت به صورت زیر می باشد.

 

$target_dir    = "uploads/";
$target_file   = $target_dir . basename( $_FILES["fileToUpload"]["name"] );
$uploadOk      = 1;
$imageFileType = strtolower( pathinfo( $target_file, PATHINFO_EXTENSION ) );
// Check if image file is a actual image or fake image
if ( isset( $_POST["submit"] ) ) {
$check = getimagesize( $_FILES["fileToUpload"]["tmp_name"] );
if ( $check !== false ) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
// Check if file already exists
if ( file_exists( $target_file ) ) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}
// Check file size
if ( $_FILES["fileToUpload"]["size"] > 500000 ) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
}
// Allow certain file formats
if ( $imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
     && $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ( $uploadOk == 0 ) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if ( move_uploaded_file( $_FILES["fileToUpload"]["tmp_name"], $target_file ) ) {
echo "The file " . basename( $_FILES["fileToUpload"]["name"] ) . " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
}

 

استفاده از کد کپچا

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

 

نتیجه گیری

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

در اینستاگرام هم ما را دنبال کنید!

 

مطالب مرتبط
مطالعه :

ثبت نام ایران خودرو و ثبت نام سایپا یکی از پر درآمدترین کار های توافقی است که شما در این آموزش یادخواهید گرفت. با توجه به اینکه ثبت نام ایران خودرو تغییر یافته و همچنین ثبت نام سایپا به دو روش جدید انجام می گیرد در روش قدیم ثبت نام خودرو و روش جدید ثبت نام سایپا و ایرانخودرو با ما همراه باشید.

سئو سایت اصفهان
مطالعه : 20 دقیقه

سئو سایت اصفهان یکی از خدمات تیم طراحی سایت و سئو سایت وب یار می باشد. آیا تا کنون به سئو سایت خود فکر کرده اید؟ آیا می دانید برای بهینه سازی سایت خود چه فاکتورهایی را باید در نظر بگیرید؟

طراحی سایت حرفه ای در اصفهان
مطالعه :

در کلاس آموزش طراحی سایت اصفهان، طراحی وب سایت را به صورت عملی و پروژه محور به شما یاد خواهیم داد. طراحی سایت هم مثل هر تخصص دیگری باید به صورت عملی صورت گیرد تا بعداً بتوانید در بازار کار مشغول به فعالیت شوید.

تغییر پیش شماره های اصفهان
مطالعه :

تغییر پیش شماره اصفهان و شهرستان ها و دانلود لیست جدید طراحی سایت اصفهان و سئو سایت اصفهان وب یار با ارائه خدمات تخصصی به دنبال افزایش فروش و رونق کسب و کار مشتریان خود می باشد. شهرستان اردستان شهر اصفهان ​​ شهرستان آران و بیدگل ​​ شهرستان برخوار شهرستان نطنز​ توابع اصفهان​​​ شهرستان تیران و کرون​​ شهرستان چادگان شهرستان خمینی شهر​​ شهرستان خوانسار​​ شهرستان خورو بیابانک​​​ شهرستان دهاقان ​شهرستان سمیرم​​ شهرستان شاهین شهر و میمه​ شهرستان شهرضا​ شهرستان فریدن​ شهرستان فریدونشهر​ شهرستان فلاورجان​ شهرستان کاشان​ شهرستان گلپایگان شهرستان لنجان ​شهرستان مبارکه​ شهرستان نائین​ شهرستان نجف آباد برای تهیه لیست زیر بسیار وقت گذاشته شده و در یک فایل متن ساده و راحت آماده شده تا هر چه سریعتر کار اداری شما انجام گردد چون وقتتان خیلی با ارزش است طراحی سایت حرفه ای در اختیار داشتن یک سایت حرفه ای و حضور موثر در فضای مجازی و تجارت الکترونیک، از مهمترین ملزومات دنیای امروزی برای کسب درآمد عالی از این بستر جذاب است. تیم طراحی سایت اصفهان وب یار با ارائه سرویس های ویژه طراحی سایت ، سئو و اینترنت مارکتینگ این امکان را به شما می دهد که توسط طراحی سایت حرفه ای در میان برند مشاغل و شرکت های ملی و بین المللی، شناخته شده و به رقابت و کسب درآمد عالی بپردازید.   کلاس آموزش طراحی […]

آرایه ها در جاوا اسکریپت
مطالعه : 8 دقیقه

آرایه ها در جاوا اسکریپت جلسه هفتم     بعد از یادگیری انواع داده ها در جاوا اسکریپت نوبت به بحث آرایه ها میرسد که در این مطلب به توضیح موارد زیر که برای بحث آرایه ها در جاوا اسکریپت می باشد می پردازیم.   • آرایه چیست؟ • شکل کلی آرایه • نحوه ی دسترسی به آرایه • متدهای آرایه • متد ()length • متد()concat • متد ()join • متد ()pop • متد ()Push • متد ()splice • متد ()Slice   آرایه چیست؟ آرایه یک نوع خاص از متغیر ها است که با یک نام و نوع داده می توان چندین مقدار را در آن ذخیره کرد ، استفاده می شود. شکل کلی آرایه شکل کلی آرایه به صورت زیر می باشد که array-name نام آرایه است و item آیتم های آرایه می باشد. var array-name = [item1, item2, …]; می خواهیم آرایه ای برای فروشندگان تعریف کنیم که در هر جای دیگر احتیاج به مشخصات فروشندگان داشتیم نیازی به تکرار همه ی اطلاعات نداشته باشیم. در مثال زیر میبینید که نام آرایه shop می باشد ‎و محصولات با نام های مربوطه در قسمت item نوشته شدند. <p id=”demo”>pen,eraiser,ball</p> <script> var shop = [“pen”, “eraiser”, “ball”]; document.getElementById(“demo”).innerHTML = shop; </script> اولین خانه ی آرایه با محتوای والیبال پر می شود. می دانیم که خانه های آرایه از 0 شروع […]

فریم ورک های جاوا اسکریپت
مطالعه : 10 دقیقه

 Best Javascript Frameworks 2019   منظور از فریم ورک جاوا اسکریپت چیست؟ در دنیای برنامه نویسی و توسعه، عبارت « فریم ورک جاوا اسکریپت » به کتابخانه ای از جاوا اسکریپت اشاره می کند که رابط های کاربری تعاملی و داده محور ارائه می دهد. این فریم ورک ها به گونه ای طراحی شده اند که در هنگام ایجاد تعامل با استفاده از یک برنامه یا رابط، به تهیه داده برای کاربران کمک می کنند. فریم ورک های جاوا اسکریپت با یکدیگر متفاوت اند اما هدف نهایشان یکی است: نمایش داده های جدید به محض اینکه کاربر، یک اقدام تعاملی را آغاز می کند. با تیم طراحی سایت اصفهان وب یار همراه باشید تا مروری بر ویژگی های محبوب چند مورد از فریم ورک های جاوا اسکریپت داشته باشیم.   خصوصیات فریم ورک های جاوا اسکریپت   1) موثر بودن: شما می توانید برنامه های موبایل، دسکتاپ و یا سایر رابط های کاربری سطح بالا را در مدت چند هفته و یا حتی چند روز بسازید! 2) امن بودن: همه فریم ورک های رایج و محبوب جاوا اسکریپت دارای تنظیمات امنیتی مطمئن هستند. طیف وسیعی از برنامه نویسان، تست کنندگان و کاربران نیز از این فریم ورک ها پشتیبانی می کنند. 3) کم هزینه بودن بیشتر فریم ورک های جاوا اسکریپت به صورت متن باز (open-source) و رایگان هستند که […]

دیدگاه ها

پاسخی بگذارید

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