0

هیچ محصولی در سبد خرید نیست.

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

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

نویسنده پشتیبانی وب یار
امتیاز مطلب
تعداد بازدید 1376
تاریخ بروزرسانی ۱۵ آذر ۱۳۹۹

آپلود فایل در 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

 

php.ini در لوکال هاست

 

 

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

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

upload file 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 و راهکارهای امنیتی را نشان دهیم. از آنجایی که امنیت سایت با آپلود فایل ممکن است به خطر بیفتد باید فرم‌های آپلود خود را به یک تیم حرفه ایی و کاربلد بسپارید. تیم وب یار آماده‌ی هرگونه کمک رسانی به شما دوستان عزیز در زمینه‌ی طراحی وب سایت و سئو سایت است.

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

 

0/5 (0 Reviews)
مطالب مرتبط
بروزرسانی سایت
مطالعه :

یکی دیگر از مهم ترین کارها برای افزایش سئو و بهبود جایگاه سایت بروزرسانی سایت و محتواهای آن است. برای آنکه بتوانید در میان رقبای خود جایگاه خوبی داشته باشید و کسب و کار اینترنتی موفقی داشته باشید نیاز است که از اهمیت بروزرسانی سایت غافل نشوید. در ادامه چند استراتژی مهم و کاربردی را به شما عزیزان ارائه می کنیم.   بروزرسانی سایت به چه معناست؟ منظور از بروزرسانی در واقع تغییر در محتواها، کلمات کلیدی، لینک ها، بروزرسانی سرور و … است. این کار به معنای از نو طراحی کردن نیست در حقیقت شما با توجه به بازخوردی که از سایت و مخاطبین خود دیده اید یک سری تغییرات در راستای بهبود و رشد سایت تان انجام می دهید. استراتژی بروزرسانی سایت وقت آن رسیده که سایت خود را به روز و همگام با رقبای خود جلو ببرید. برای این کار انجام کارهای زیر الزامی و تا حد زیادی کمک کننده است. 1-بررسی گوگل آنالیتیکس با بررسی گوگل آنالیتیکس شما می توانید رفتار کاربران را به راحتی در سایت خود مشاهده کنید. این که چه صفحه ای محبوبیت بیشتری دارد یا این که کدام صفحه نرخ کلیک بالایی دارد و … با بررسی و آنالیز رفتار کاربران می توانید صفحاتی که نیاز به بروزرسانی دارند را نیز به راحتی کشف کنید.     2-حذف محتواهای قدیمی به مرور […]

مطالعه :

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

نحوه ی ایجاد دسته بندی های سفارشی در وردپرس
مطالعه : 6 دقیقه

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

آموزش دیجیتال مارکتینگ
مطالعه : 8 دقیقه

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

ویروس مارکتینگ چیست؟
مطالعه :

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

مطالعه :

در خصوص ارزهای دیجیتال قولی به شما داده بودیم که با مفاهیم کلی این بازار شما را آشنا کنیم و راه کسب درآمد از آن را به شما نشان دهیم. در این مقاله  با یک موضوع جذاب دیگر در خدمت شما هستیم. مقاله در مورد دسته بندی ارزهای دیجیتال می باشد. همانطور که در مقالات قبل گفتیم ارزهای دیجیتال به وجود آمده اند تا خدمتی را جامعه بشری انجام دهند. بر اساس این خدمات ما این ارزها را دسته بندی می‌کنیم.     دسته بندی ارزهای دیجیتال: ارزهای دیجیتال شامل ۶ دسته می شوند: ارز های دیجیتال ارز های خصوصی ارزهای خدماتی ارزهای ثابت توکن های خاص توکن های ایمن در بالا شش دسته ارزهای دیجیتال را برای شما نام بردیم. در ادامه می خواهیم آنها را تک به تک مورد بررسی قرار دهیم.  ارزهای دیجیتال: این دسته از ارزهای دیجیتال برای دریافت و پرداخت استفاده می شوند. برخلاف تصوری که الان در ذهن شما ایجاد شد بیت کوین نسبت به ارزهای دیجیتال دیگر مانند اتریوم از سرعت کمتری برای دریافت و پرداخت برخوردار است. سعی کنید از ارزهای دیگر ای که بلاک چین سریعتری دارند استفاده کنید. ارز های خصوصی: ارزهای خصوصی یا در اصطلاح privacy coin  ها برای حریم خصوصی شما به وجود آمده اند. این دسته از ارز ها مورد توجه بسیاری از خلافکارها و قاچاقچیان میباشند. […]

دیدگاه ها

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

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