كاربر فعال


    كاربر مهمان


درباره وب سايت


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


برای عضویت در وب سایت روی لینک زیر کلیک کنید :

عضویت در وب سایت

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

تالار گفتمان


لينك به ما


برای قرار دادن لینک سایت آموزش برنامه نویسی در وب سایت یا وبلاگ خود کد زیر را با کلیک بر روی دکمه " کپی کد " کپی کرده و در محل مورد نظر خود قرار دهید .







پيوندها


>>>اف سي پرسپوليس
>>>كسب درآمد اينترنتي ( درآمدزايي آسان و واقعي از طريق اينترنت )
>>>تالار گفتمان
>>>وب سایت افشین رشیدی
>>>وبلاگ بزرگ منچستر
>>>پول * پول * پول
>>>Astronomy
>>>شعرای یمانی
>>>اخبار سپاهان
>>>خريد و فروش اينترنتي (كمترين قيمتها )
>>>امیرحسین
>>>برنامه نویسی
>>>بهترین آهنگ های روز
>>>دريافت پول به ازاي هر كليك
>>>پایگاه آموزش
>>>جديدترين كليپ هاي موبايل
>>>دانلود ، سرگرمی ، مطالب جالب و خواندنی
>>>ارزان سراي اينترنتي
>>>Abtarang
>>>سرمست ترین
>>>سینما و رپ ایرانی
>>>!:: دنیـای عـکس و مـوزیک ::!
>>>عشق ، احساس ، زندگی
>>>فقط چند دقیقه
>>>Iranian-IT
>>>مهندسان برق
>>>مروارید درون
>>>آموزشکده کامپیوتر
>>>جونه من 18- نیان تو
>>>سلول زنده
>>>گيتار
>>>best download
>>>جک و SMS
>>>کلیپ ( جدید - 2008 ) و عکس و رینگتون و اس ام اس
>>>ورود ممنوع
>>>وبلاگ تخصصی کامپیوتر
>>>گروه شبکه پرشین بلاگ - پویا کوشنده
>>>خبرهای روز IT
>>>قفل سکوت
>>>دنیای کامپیوتر
>>>بیا تو مجانی اطلاعات بگیر
>>>برترین اخبار و مقالات رایانه
>>>فدا خانوم رو ببین چه کرده
>>>دابل-کلیک، مرکز آموزش کامپیوتر و اینترنت ایرانیان
>>>قاسم پرسپولیسی
>>>يه سايت توپ براي همه ي سليقه ها
>>>عکس داغ
>>>تجارت الكترونيك
>>>hossein
>>>تفریح>جک>ترفند>مطالب عاشقانه>هرچیکه بخوای
>>>وب سایت تفریحی طوطیا
>>>کرمانشاه نیوز
>>>computer-world20
>>>هنر رزمي فونگ پاي چي وو كونگ فو
>>>AIOS - All In One Site
>>>ROYAYE KHIS
>>>بانک مقالات فارسی
>>>قاسم روني
>>>طراحی وب سایت
>>>عکسهای جدید ایرانی



               WWW.BARNAMENEVISI.SOMEE.COM


مديريت فايل هاي ارسالي توسط كاربران

مديريت فايل هاي ارسالي توسط كاربران

 

 

حتما تا بحال سايت هايي را ديده ايد كه به كاربران اجازه Upload فايل از طريق صفحات (فرم هاي) Html را مي دهند به عنوان مثال در قسمت Profile هاي ياهو كه شما به عنوان يك كاربر عادي مي توانيد تصوير خود را كه يك فايل با فرمت Gif يا Jpg است و يا نمونه پيغام صوتي خود را به Profile تان اضافه كنيد و يا بخش آرشيو سايت هاي تحقيقاتي كه به اعضاي خود اجازه مي دهند نتايج كار خود را در قالب يك فايل PDF و يا بصورت Zip شده بر روي سايت قرار دهند .

به مطالب گفته شده در بالا حتما به اين نتجه رسيده ايد كه در اينگونه سيستم ها سه نكته اساسي قرار داد .


1- چكونگي ارسال فايل با استفاده از پروتكل
HTTP به جاي FTP.


2- بررسي فرمت فايل و جلوگيري از
Upload فايل هاي غير مجاز.


3- بررسي اندازه فايل و جلوگيري از ارسال فايلهاي حجيم.



براي دريافت فايل از كاربر ابتدا بايد فرمي به شكل زير ايجاد كرد :



<form name=\"form1\" method=\"post\" action=\"_URL_\"

enctype=\"multipart/form_data\">

<input type=\"file\" name=\"userfile\">
<input type=\"submit\" name=\"Submit\" value=\"Submit\">
</form>


عبارت
multipart/form_data فرم بالا را از فرمهايي كه تا بحال با آن كار كرده ايم متمايز مي كند . در فرم بالا قبل از دكمه Submit كادر مخصوص در يافت فايل قرار گرفته در واقع اين همان فايلي است كه كاربر قصد ارسال به سرور را دارد.


در اين فرم _
URL_ اشاره به برنامه PHP اي دارد كه قصد داريد عمل دريافت فايل را در آنجا انجام دهيد .تا اينجا فرم مورد نياز طراحي شده است حال با يك برنامه ساده مثل نمونه زير مي توان فايل را از Client خوانده و بر روي سرور ذخيره كرد.


<?
  
if(isset( $Submit ))   {
if (
$_FILES['userfile']['type'] == "image/gif\"){   copy ($_FILES['imagefile']['tmp_name'], \"files/\".$_FILES['imagefile']['name'])
  or die (\"Could not copy\");

  echo \"\";
  echo \"Name: \".$_FILES['imagefile']['name'].\"\";
  echo \"Size: \".$_FILES['imagefile']['size'].\"\";
  echo \"Type: \".$_FILES['imagefile']['type'].\"\";
  echo \"Copy Done....\";
  }
  else {
  echo \"\";
  echo \"Could Not Copy, Wrong Filetype (\" .$_FILES['imagefile']['name'].\")\";

  }
  }?>


اين برنامه در صورتي كه فايل ارسالي يك فايل
GIF باشد آنرا با همان نامي كه روي كامپيوتر كاربر قرارداشته در شاخه Files بر روي سرور ذخيره مي كند .البته همانطور كه ميدانيد متغيير هايي كه براي Upload فايل تعريف مي شوند بسته به نسخه PHP و تنظيمات آن متفاوت مي باشند .

بعد از يك Upload موفق ، هنگامي كه track_vars فعال باشد آرايه هاي $_FILESو $HTTP_POST_FILES ايجاد مي گردند . سرانجام اگر register_globals فعال باشد متغييرها به صورت globals ايجاد خواند شد.



توجه :
track_vars از نسخه 4.0.3 به طور پيش فرض فعال است . از PHP 4.1.0 به بعد ترجيحا از متغيير عمومي $_FILES به جاي $HTTP_POST_FILES استفاده مي گردد .



$
HTTP_POST_FILES/$_FILES : به منظور مهيا كردن مشخصات فايل (هاي) ارسال شده ايجاد شده اند . محتواي اين دو متغيير به شرح زير است البته توجه كنيد كه ‘userfile’ نام انتخابي ما در هنگام ساخت فرم HTML است .

<? $HTTP_POST_FILES['userfile']['name'] ?>


نام اصلي فايل بر روي كامپيوتر كاربر.


<? $HTTP_POST_FILES['userfile']['type'] ?>


شناسه محتواي (
MIME type) فايل . در برنامه فوق تنها به فايلهاي GIF اجازه ذخيره شدن داده مي شود حال چنانچه بخواهيم كاربر را محدود به ارسال فايل هاي Wavنماييم
بايد مقدار اين متغيير را با "
audio/wav" مقايسه كنيم .


<? $HTTP_POST_FILES['userfile']['size'] ?>[code]
اندازه فايل برحسب بايت .

[code]
<? $HTTP_POST_FILES['userfile']['tmp_name'] ?>


نام موقتي كه فايل در هنگام
Upload موقتا با آن نام بر روي سرور ذخيره مي گردد .



توجه : متغيير $_
FILES تنها در نسخه هاي 4.1.0 و بالاتر شناخته شده است و نيز نسخه 3 PHP از $HTTP_POST_FILES حمايت نمي كند .



همچنين اگر در فايل
PHP.INI پارامتر register_globals فعال باشد متغييرهاي زير موجود خواهند بود :


<? $userfile
$userfile_name
$userfile_size
$userfile_type ?>


فايل ها به طور پيش فرض در دايركتوري فايلهاي موقت سرور ذخيره مي شوند مگر اينكه مكان ديگري توسط
upload_tmp_dir در فايل PHP.INI تعيين شده باشد . در پايان اجراي اسكريپت چناچه فايل ارسال شده از طرف كاربر را به مكان ديگري انتقال ندهيد و يا نام آن را تغيير ندهيد توسط سيستم اين فايل پاك خواهد شد.



در صورت استفاده از
PHP4.1.0 و بالاتر مي توانيد خط اول برنامه فوق را بصورت زير بنويسيد :


<?
if(is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) <br />
  { <
br />
  
//In PHP 4.1.0 or later, $_FILES should be used instead of $HTTP_POST_FILES.


ارسال چنين فايل به طور همزمان :



همانطور كه ميدانيد يك برنامه را مي توان به چنيدن روش مختلف پياده سازي كرد ولي چه خوب است كه اين پياده سازي همراه با استفاده بهينه از گرامر زبان باشد .براي اينكه كاربر بتواند بيش از يك فايل را در يك لحظه ارسال كند فرمي به شكل زير طراحي كنيد .


<form name=\"form1\" method=\"post\" action=\"_URL_\"

enctype=\"multipart/form_data\">

<input type=\"file\" name=\"userfile[]\">
<input type=\"file\" name=\"userfile[]\">
<br />
  <input type=\"submit\" name=\"Submit\" value=\"Submit\">
</form>


همانطور كه مشاهده مي شود اين فرم داراي دو كادر دريافت فايل است كه به نام آنها به صورت يك آرايه است . پس از ارسال اين فرم بر روي سرور متغيير هاي :


<? $HTTP_POST_FILES['userfile']['name'][0]
$HTTP_POST_FILES['userfile']['size'][0]
$HTTP_POST_FILES['userfile']['type'][0]
$HTTP_POST_FILES['userfile']['tmp_name'][0]?>


دلالت بر مشخصات فايل اولي و متغييرهاي :

<? $HTTP_POST_FILES['userfile']['name'][1]
$HTTP_POST_FILES['userfile']['size'][1]
$HTTP_POST_FILES['userfile']['type'][1]
$HTTP_POST_FILES['userfile']['tmp_name'][1]?>


دلالت بر مشخصات فايل دوم دارند .


همينطور الي آخر مي توان چندين فايل را ارسال كرد .



روش
HTTP PUT


روش ديگري نيز براي ارسال فايل به سرور وجود دارد كه بسيار ساده تر از روش بالا عمل مي كند ولي چون اين روش براي حفظ امنيت سرور نياز به تنظيمات خاصي در سرورها دارد از توضيح آن در اينجا صرف نظر كرده ام .

 

درهنگام نوشتن چنين برنامه هايي مراقب مجوز هايي كه به دايركتوري ذخيره اين فايل ها مي دهيد و همچنين بررسي اينكه فايل ارسال شده از طرف كاربر همان چيزي است كه بايد باشد باشيد .فراموش نكنيد كه هميشه عده اي بر روي اينترنت به دنبال راهي براي نفوذ به كامپيوتر و يا وب سايت شما هستند.

 

 

 

 

بازگشت به فهرست

بازگشت به صفحه نخست


                آخرین مطالب وب سایت


راهنمای استفاده و آموزش MATLAB

الگوریتم محاسبه کوتاهترین مسیر بین تمام رئوس ( Floyd ) به زبان C

آموزش گام به گام پاسكال

برنامه نویسی با زبان اسمبلی

توابع و قطعه كدهاي مفيد برنامه نويسي

برنامه ماشين حساب مهندسي با زبان دلفي 7

همه چيز در مورد اينترنت

منابع ، سرفصلها و اطلاعات كنكور كارداني به كارشناسي دولتي 1388 نرم افزار كامپيوتر

برنامه بازي مارپله با زبان ويژوال بيسيك

برنامه استك چند گانه با استفاده از آرايه به زبان C

برنامه مساله پر پيچ و خم Mazing به زبان C


               ارسال سوالات ، نظرات و پيشنهادات


نام :
ایمیل :
وب سایت :
موضوع :
متن پیام :
كد امنيتي :

                                     مشاهده سایر پیامها



* براي مشاهده ساير نظرات و ديدن پاسخ سوالات روي " مشاهده ساير پيامها " كليك كنيد
* در صورتی که از پاسخ سوالات مطرح شده سایر بازدیدکنندگان مطلع هستید لطفا از طریق همین فرم پاسخ دهید
* چنانکه نظر شما خصوصی می باشد به ایمیل afshinrashidi@yahoo.com ارسال فرمائید .

منوي اصلي

= صفحه اصلی
= تالار گفتمان
= عضویت در وب سایت
= ورود به حساب شخصی
= آپلود عکس در وب سایت
= چت
= Visual Basic
= VB.NET
= C ++ / VC++ / C
= C #
= Pascal
= Delphi 7
= JAVA
= ASP
= ASP.NET
= PHP
= Gold Fusion
= XML
= HTML
= CSS
= Java Script
= Action Script
= SQL Server
= ADO / ADO.NET
= Security
= Registery
= UML
= Internet
= Windows XP Install
= Access
= Photoshop CS
= Flash
= Microsoft Power Point
= Microsoft Excel
= MATLAB
= ذخیره و بازیابی اطلاعات
= سیستم عامل
= ساختمان داده ها
= مهندسی نرم افزار
= معماری کامپیوتر
= هوش مصنوعی
= شیوه ارائه مطالب
= کتاب آموزش MATLAB
= الگوریتم Floyd
= آموزش گام به گام پاسكال
= برنامه نویسی اسمبلی
= توابع مفيد برنامه نويسي
= برنامه ماشين حساب دلفي
= همه چيز در مورد اينترنت
= كنكور كارداني به كارشناسي 88
= بازي مارپله با ويژوال بيسيك
= استكهاي چندگانه با زبان C
= مساله پر پيچ و خم Mazing
= تبديل Infix به Postfix
= شکستن پسورد administrator
= اجراي فايل صوتي در ويژوال بيسيك
= پارتيشن بندي FDisk
= اسمبل كردن كامپيوتر
= ارسال ايميل به ما


ورود به سيستم


 نام کاربری :
 رمز عبور :


عضویت در وب سایت


نظرسنجي

عالی
خوب
متوسط
ضعیف
بسیار ضعیف

نتايج نظرسنجي

عالی : 73 رای - 68 درصد

خوب : 14 رای - 13 درصد

متوسط : 5 رای - 5 درصد

ضعیف : 2 رای - 2 درصد

خیلی ضعیف : 14 رای - 13 درصد

مجموع آرا : 108 رای


نويسنده


نام : افشین
نام خانوادگی : رشیدی
شهرستان : مهاباد
تاریخ تاسیس : 05/05/1387
ایمیل : afshinrashidi@yahoo.com




آمار وب سايت


[11/22/2009]
بازديدهاي شما :
IP شما : 38.107.191.103
ساعت ورود : 2:49:58 PM
تعداد کل بازدیدها : 86405 بار
تعداد اعضا : 866 نفر
آمار وبگذر :

وضوح تصوير :


افشين رشيدي
Copyright © 2006 Afshin Rashidi - MAHABAD,IRAN , All rights reserved.
E~mail : afshinrashidi@yahoo.com