PDA

نسخه کامل مشاهده نسخه کامل : آپلود فایل



jenipher
26-08-2011, 11:14
برای قسمت آپلود وب سایتم این کد را قرار دادم اما وقتی فایلی را انتخاب میکنم و روی آپلود کلیک میکنم صفحه اصلی وب سایت باز میشود اما اگر این کد را در صفحه دیگری امتحان کنم فایل آپلود میشود به نظر شما مشکل از کجاست؟

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

m p c
26-08-2011, 12:02
سلام می تونید از کد زیر استفاده کنید که بهترم هست


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mohrd
26-08-2011, 12:07
سلام.
هنگامی می خواهید فایل ارسال کنید، باید enctype فرم رو multipart/form-data قرار دهید.
یعنی خط اول تگ فرم شما باید به این صورت باشد:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اگر این قسمت رو درست تنظیم کنید، اسکریپت شما مشکلی نخواهد داشت.
البته می تونید از اسکریپت m p c استفاده کنید که کامل تر از کد شماست. فراموش نکنید که همیشه فرمت و نوع فایلی که آپلود میشه رو چک کنید. چون ممکنه کاربر به جای فایل معمولی، یک shell script آپلود کنه و .... (تمام)

موفق باشید ./.

m.m.m5651
26-08-2011, 22:09
راستی من داشتم یه فایل php رو با فرمت gif آپلود می کردم( :دی ) ولی گفت که فایل به نظر امن نیست. چه شکلی فهمیده؟! function خاصی داره؟
یکی از همین سایت های آپلود.

m.m.m5651
27-08-2011, 21:25
سه تا فیلم آموزشی گیر اوردم:
PHP Tutorials: Secure File Upload (Part 3/3) ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...
PHP Tutorials: Secure File Upload (Part 2/3) ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...
PHP Tutorials: Secure File Upload (Part 1/3) ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
File uploading, ensuring that you only allow a specific set of allowed file extensions. An easy, eff...

jenipher
31-08-2011, 12:25
برای قسمت آپلود سایت از این کد استفاده میکنم اما کد کار نمیکنه !!!!!!!!!

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mohrd
31-08-2011, 12:53
فایل آپلود نمیشه یا رکورد اضافه نمیشه؟
شما در کدتون هیچ دیتابیسی رو انتخاب نکرده اید. سیستم از کجا بدونه که جدول file در کدوم db هست؟
بعد از کانکت شدن به دیتابیس جدول رو با این کد انتخاب کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

jenipher
31-08-2011, 15:57
وقتی روی آپلود کلیک میکنم مرورگر این پیغام را به من نشان میده

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

neopersia
01-09-2011, 00:06
شما اسم فیلدی رو که در فرم html هست در قسمت php اشتباه وارد کردید. نام فیلد file هست ولی شما از userfile استفاده کردید

jenipher
02-09-2011, 07:30
چه تغییراتی در کد آپلود اعمال کنم تا فقط اجازه چهار نوع فایل(doc,pdf,zip,powerpoint) برای اپلود را بدهد

jenipher
02-09-2011, 14:05
لطفا راهنمای کنید

m.m.m5651
02-09-2011, 15:02
اگر اون سه فیلمی رو که گذاشتم ببینید همه ی این مشکلاتتون حل میشد توش پسوند هارو هم داشت!

mohrd
02-09-2011, 15:41
سلام.
شما باید ۲ مورد رو (پیدا و) کنترل کنید:
۱. extension (منظور عبارتی که بعد از آخرین . می آید):
شما نام کامل فایل (نام + extension) رو دارید (عنصر name). پس برای پیدا کردن فرمت، کافیه عبارتی که بعد از آخرین . در نام فایل اومده رو پیدا کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید۲. نوع فایل (MIMETYPE):
این مورد رو به طور ‍پیشفرض تعریف شده و در عنصر type وجود داره:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدخب، ما الان هر ۲ مورد رو داریم. و حالا باید کنترل کنیم و ببینیم که مشخصات فایل ارسالی کاربر با مشخصات فایل های ارسالی مجاز ما (در اینجا doc,pdf,zip,powerpoint) می خونه یا نه (کد کامل):

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته ما در اینجا فایل های pptx و docx رو هم مجاز کردیم.

موفق باشید ./.

jenipher
02-09-2011, 21:41
اگر خواسته باشیم فقط یک نوع فایل(عکس) آپلود کنیم باید بدین صورت نوشت؟؟

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mohrd
02-09-2011, 22:59
بله.
البته، extension با mime تفاوت داره. همون طور که گفتم extension تقریبا معادل فرمت فایله. باید ببینید فرمت فایلتون چیه. از اونجایی که شما تصاویر رو مد نظر دارید، extension های مجاز عبارتند از: jpg, png, gif, bmp (و البته jpeg).
کد شما باید به این صورت باشه:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته لیست کامل MIMETYPE های مربوط به این تصاویر رو باید از سایت های مختلف (مثل filext.com) پیدا کنید.
(وقتی یک آرایه (یک نوع فایل) دارید، array_merge نیاز نیست)

موفق باشید ./.

jenipher
03-09-2011, 07:04
برای دانلود فایل بدین صورت کد را نوشتم

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اما فایلی که دانلود میکنم حجم آن کمتر از حجم واقعی آن میباشد ووقتی آن فایل را باز میکنم این پیغام خطا را نشان میدهد
adobe reader couldnot open it

jenipher
03-09-2011, 07:40
باتوجه به کد بالا اگر یک فایل از نوع pdf یا........باشد چندین بار انتخاب کنم و روی آپلود کلیک کنم فایل آپلود میشود وبه پوشه upload میره