النتائج 1 إلى 9 من 9

الموضوع: MAX_FILE_SIZE - Upload File

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    61

    MAX_FILE_SIZE - Upload File



    السلام عليكم

    عند انشاء فورم لرفع الملفات ... يوجد حقل MAX_FILE_SIZE وهو لتحديد اقصى حجم للملف :
    السؤال :
    1- كيف استفيد من هذه الحقل لاختبار حجم الملف الذي تم اختياره ؟
    2- لماذا لابد ان يكون هذا الحقل في بداية الفورم فقط ؟
    3- وهل الاعتماد على هذا الحقل فقط ( من غير تحديد اقصى حجم للملفات من خلال php.ini ) في تحديد اقصى حجم يمكن ان يكون به خطورة ( اي يتم تغييره ) ؟
    4- وهل اذا تم رفع ملف حجمه اكبر من الذي تم تحديده بواسطة الـ MAX_FILE_SIZE . ماالذي سيحدث ؟

    اتمنى التوضيح .. وشكرا





    التعديل الأخير تم بواسطة soma ; 25-08-2009 الساعة 04:30 AM سبب آخر: اضافة


  2. #2
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    112


    حقل MAX_FILE_SIZE لايعتمد عليه إطلاقاً
    هو يعمل تقريباً علي فايرفوكس بشكل جيد
    وحتي لو عمل علي كافه المتصفحات فهو غير كافي أيضاً لأن بإمكان أي شخص رفع الملفات علي موقعك بدون متصفح وعن طريقه كتابه سكربت يقوم بهذا العمل مثل إسكربتات الأسبام
    كذلك لاتعتمد علي إعدادات php.ini بشكل كلي لأن الأسكربت غالباً يعمل علي إستضافه مشتركه
    يجب أن يقوم أسكربتك بفحص كل شئ قبل الرفع إلي الموقع وأول شئ بعد الأسم والنوعيه فحص الحجم






  3. #3
    عضو نشيط
    تاريخ التسجيل
    Jan 2005
    المشاركات
    115


    MAX_FILE_SIZE يقوم بتحديد أعلى حجم ممكن للملف الواحد في عملية الأبلود .. وذلك في ملف الإعدادات php.ini
    1- باستخدام جملة شرطية ... if then
    2- لأنك لا تقوم بالقيام بأي شي قبل أن تتأكد من أن الملف أصغر أو يساوي الحجم الأعلى المسموح به
    3- ليس هناك خطورة كبيرة .. ولكن يفضل أن تقوم بالتحديد عن طريق php.ini لكي لا يكون هناك اي منفذ لتجاوز عملية مقارنة حجم الملف
    4- لا يمكن رفع ملف أكبر من ما يحدده MAX_FILE_SIZE في php.ini






  4. #4
    عضو نشيط
    تاريخ التسجيل
    Jan 2005
    المشاركات
    115


    حقل MAX_FILE_SIZE لايعتمد عليه إطلاقاً
    هو يعمل تقريباً علي فايرفوكس بشكل جيد
    وحتي لو عمل علي كافه المتصفحات فهو غير كافي أيضاً لأن بإمكان أي شخص رفع الملفات علي موقعك بدون متصفح وعن طريقه كتابه سكربت يقوم بهذا العمل مثل إسكربتات الأسبام
    كذلك لاتعتمد علي إعدادات php.ini بشكل كلي لأن الأسكربت غالباً يعمل علي إستضافه مشتركه
    يجب أن يقوم أسكربتك بفحص كل شئ قبل الرفع إلي الموقع وأول شئ بعد الأسم والنوعيه فحص الحجم
    لا علاقة لـ MAX_FILE_SIZE بأي متصفح .. فهي قيمة مخزنة في ملف الإعدادات php.ini






  5. #5
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    112


    لا علاقة لـ MAX_FILE_SIZE بأي متصفح .. فهي قيمة مخزنة في ملف الإعدادات php.ini
    عزيزي أنت في سوالف سوفت فلاتقل أي كلام لاتعرفه
    حقل MAX_FILE_SIZE هو أسم لحقل مخفي يوضع في الفورم يحدد أقصي حجم للملف الذي يمكن رفعه في حاله كان المتصفح يدعم هذه الخاصيه

    يكون شكل الحقل هكذا
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />

    للتعرف علي هذا الحقل وعمليه رفع الملفات
    PHP: POST method uploads - Manual

    أما ماتتكلم عنه أنت فهو إعداد في ملف php.ini
    وأسمه upload_max_filesize






  6. #6
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    في الواقع MAX_FILE_SIZE مجرد قيمة عادية توضع في النموذج الذي يحتوى حقل رفع ملف , وهذه القيمة تأتي على شكل حقل مخفي مثلها مثل أي حقل مخفي آخر , لكن php عندما برسل لها المتغير MAX_FILE_SIZE فأنها بشكل تلقائي تتحقق من أن حجم الملف المرفوع لا يزيد عن حجم هذا الحقل , اذا كان حجم الملف أكبر فأن php لا ترسل لك بينات في المصفوفوه $_FILES وكأن احدا لم يرسل لك ملف .

    الطريقة السابقة لا ينصح بالاعتماد عليها مطلقا لاننه ببساطه يمكن لاي شخص تغيير قيمة MAX_FILE_SIZE بسهوله , أيضا القيمة MIME-TYPE التى ترسل مع الملف من قبل المتصفح .

    بإختصار , دوما ضع تحقق من البيانات القادمة من الخارج ولا تثق بأي بيانات مرسله , حتى عملية استرجاع IP اسم موقع تحقق من البيانات العائدة اليك لكونها تأتي من خادم DNS خارجي .

    مراجع
    PHP: POST method uploads - Manual
    PHP: Error Messages Explained - Manual





    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .

  7. #7
    عضو نشيط
    تاريخ التسجيل
    Jan 2005
    المشاركات
    115


    عزيزي أنت في سوالف سوفت فلاتقل أي كلام لاتعرفه
    حقل MAX_FILE_SIZE هو أسم لحقل مخفي يوضع في الفورم يحدد أقصي حجم للملف الذي يمكن رفعه في حاله كان المتصفح يدعم هذه الخاصيه

    يكون شكل الحقل هكذا
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />

    للتعرف علي هذا الحقل وعمليه رفع الملفات
    PHP: POST method uploads - Manual

    أما ماتتكلم عنه أنت فهو إعداد في ملف php.ini
    وأسمه upload_max_filesize

    شكراً لك
    التبس علي الأمر فلم أكن مركزاً بسبب انشغالي في برمجة أحد المشاريع
    أرجو أن ردي عليك لم يزعجك أو يضايقك :shy:






  8. #8
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    112


    شكراً لك
    التبس علي الأمر فلم أكن مركزاً بسبب انشغالي في برمجة أحد المشاريع
    أرجو أن ردي عليك لم يزعجك أو يضايقك :shy:
    ولايهمك
    رمضان كريم






  9. #9
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    61


    بارك الله فيكم جميعا ...
    رمضان كريم










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض