مشكلة عدم التمكن من رفع المرفقات وظهور رسالة "فشل رفع الملف

ماسة الشوق

عضو جديد
27 نوفمبر 2008
397
3
0
حيث لاواجدو ليــ
www.se-caa.com
مشكلة عدم التمكن من رفع المرفقات وظهور رسالة "فشل رفع الملف زيدات الحجم انا زدته الى 999999 وصر حجمه 976.6 كيلوبايت

فا نا ابي ازينه زياده كبيره كيف يالليت من لديه الحل لا يبخل:busted_red::busted_red:
 

سجدة المصريه

عضو جديد
26 يونيو 2008
1,326
6
0
السلام عليكم ورحمة الله وبركاته
فشل رفع الملف " أو ما شابهها من رسائل .. ولم ينجح الكثير منهم في حل المشكلة بالرغم من تعدد الحلول.

وقد وقعت انا شخصياً في هذه المشكلة .. وكنت ارى شيئاً غريباً في مشكلتي ايضاً وهو ان بعض الاعضاء يستطيعون تحميل المرفقات ولكن البعض الآخر لا !! وهذا ما زاد استغرابي وسوف اخبركم بالسبب لاحقاً.

المهم .. لم يهدأ لي بال مع هذه المشكلة الا بعد ان توصلت الى الحل الصحيح عن طريق فتح تذكرة مطولة مع مركز الدعم الفني بالشركة الأم vbulletin وقيام احد المختصين لديهم بزيارة منتداي والدخول الى لوحة التحكم والاطلاع على المشكلة عن قرب.

واتضحت المشكلة في النهاية ان اسبابها تعود الى اعدادات سيرفر المستضيف ونظام السيف مود Safe Mode ويجب ان نقوم نحن أصحاب المنتديات بضبط اعداداتنا لتتماشى مع اعدادات السيرفر. كيف؟

أقولكم كيف بالتفصيل الممل .. تابعوا معي الخطوات:

بس قبل لا أبدأ في الخطوات حبيت اوضح ان احد الحلول يقول لك عدل على ملف الـ .htaccess علشان تتماشى مع السيف مود لسيرفر المستضيف! وهو حل فاشل جداً
thumbdown.gif
اتركه عنك.

الخطوة الأولى:
=======================
اولا:
نقول بالدخول بالاف تي بي لمجلد المنتدى
وننشي مجلد داخل باسم
tmp
ونعطيه تصريح 777
=======================

=======================
ثانيا:
نقوم بالدخول الى لوحة تحكم المنتدى
ونغط على خيارات المنتدى
ثم
خيارات البريد
ونتاكد من الاتي
1- استخدام نظام الانتظار البريدي يجب ان يقون على خيار لا
2- تفعيل مقياس "-f" يجب ان يكون على خيار لا
3- بريد SMTP يجب ن ايكون على خيار لا
4- إتّصال SMTP الآمن يجب ان يكون على خيار لا
=======================

بعد ذلك نضغط على حفظ


=======================
الان نرجع على خيارات المنتدى ونحتار
خيارات إعدادات المزود و تحقيق الأمثلية
ونتاكد من
1- تفعيل الرفع في الوضع الآمن يجب ان يكون الخيار نعم
2- المجلد المؤقت للوضع الآمن (تضع فيه الامتداد الخاص بمجلد tmp)
wol_error.gif
This image has been resized. Click this bar to view the full image. The original image is sized 701x162 and weights 101KB.
mailsafemode.jpg

استبدل المحدد بالاحمر باليوزر الخاص بموقعك (يوزر الاف تي بي والسيبانل)
=======================
بعد ذلك نضغط على حفظ​

quot-bot-left.gif


الكثير انحلت معهم المشكلة بعد تطبيق الحل الوارد اعلاه .. ولكن البعض الآخر لم ينجح معهم الحل وما زالوا يعانون من المشكلة وأنا كنت منهم. اذن لنذهب الى الخطوة الثانية.

الخطوة الثانية:

ان الذين لم ينجح معهم الحل اعلاه هم الذين يتعاملون مع المرفقات على أساس انها تخزن في ( نظام الملفات ) أي بمعنى ان المرفقات ترفع الى احد المجلدات الموجودة في الموقع ولنفرض ان اسمه مثلاً attachments ولنفرض ان امتداده هو public_html/vb/attachments وهذا الخيار يلجأ اليه صاحب المنتدى ليخفف الضغط عن قاعدة بياناته بتخزين المرفقات في مجلد منفصل بدلاً من ان يخزن المرفقات على القاعدة مباشرة. وطبعاً التصريح المعطى لهذا المجلد هو 777 ولكن لافائدة منه مع مشكلتنا هذه.

اذن اين الخلل ؟؟
الخلل هو ان نظام السيف مود في سيرفر المستضيف لا يسمح برفع الملفات الى مجلد منفصل من خلال سكربت برنامج الفيبوليتن. روح يمين روح يسار ما تقدر تغير فيه شي خلاص هو هكذا ولن يقبل المستضيف بأن يغير نظامه علشان خاطر عيونك.

لذا .. ولكي تحل المشكلة نهائياً ..
يتوجب عليك ان تغير مكان تخزين المرفقات الى التخزين في (قاعدة البيانات) بدلاً من (نظام الملفات).

وهذا الشرح مصور للطريقة:

تحذيرات قبل البدء في العملية:
1- خذ نسخة من مجلدك اللي يحتوي على المرفقات .. لأنها ستحذف من المجلد بعد ان تنقلها لقاعدة البيانات.
2- خذ نسخة احتياطية من قاعدة بياناتك علشان اذا ما عرفت كيف تواصل العملية تقدر تعيد قاعدة بياناتك السابقة.
لاتتخوفون من التحذيرات فهي مجرد احتياط للأمان
icon30.gif


بسم الله نبدأ:

ادخل لوحة تحكم المنتدى

ثم الذهاب الى خيارات الملفات المرفقة ثم ( مكان تخزين المرفقات ) كما في الصورة:
1469.imgcache


ستلاحظ ان مكان تخزين المرفقات حالياً تخزن على نظام الملفات كما في الصورة .. انت اختر خيار ( نقل العناصر من نظام الملفات الى قاعدة البيانات ) ثم اضغط على ( اذهب ) :
wol_error.gif
This image has been resized. Click this bar to view the full image. The original image is sized 720x159 and weights 73KB.
1470.imgcache


سيطلب منك بعد ذلك تأكيد العملية .. أكد العملية وواصل معه .. ليبدأ في عملية نقل المرفقات الى قاعدة البيانات الى ان يصل الى النهاية.


بعد اكتمال العملية ارجع الى خيارات ( مكان تخزين المرفقات ) وستلاحظ انها اصبحت في قاعدة البيانات كما في الصورة:
wol_error.gif
This image has been resized. Click this bar to view the full image. The original image is sized 724x142 and weights 63KB.
1471.imgcache


واخيراً .. يتوجب عليك تحديث العدادات من خلال هذا الخيار اللي في الصورة:
wol_error.gif
This image has been resized. Click this bar to view the full image. The original image is sized 711x193 and weights 114KB.
1472.imgcache



بامكانك الآن التأكد من المرفقات بزيارة احد الموضوعات اللي تحتوي على المرفقات في منتداك وتحميلها .. او رفع ملف مرفق جديد.

انتهت العملية الآن وبامكانك حذف المجلد السابق اللي كان يحتوي على المرفقات بكل أمان.

ولا تنسى ان تكون خياراتك الخاصة بـ ( اعدادات المزود وتحقيق الامثلية ) على نفس الخيارات المشروحة في الاقتباس المشروح اعلاه ومهم جداً بأن تتأكد ان مجلد tmp يحمل التصريح 777


وبهذا انحلت المشكلة ولله الحمد


في شي قلته لكم في البداية وما كملته .. ان بعض الاعضاء عندي كانوا يقدرون يرفعون المرفقات وبعضهم لا .. كيف هذا ؟؟ الجواب هو اني كنت في السابق مخلي مكان تخزين المرفقات في قاعدة البيانات .. ولكن لاحقاً قررت انقلها لنظام الملفات .. لذلك الاعضاء اللي كانوا محملين مرفقات في الماضي كانوا يستطيعون الرفع لوجود مجلد خاص بهم داخل مجلد المرفقات الرئيسي .. ولكن الاعضاء الجدد ما كانوا يستطيعون الرفع ويعطيهم رسالة خطأ وهي " فشل رفع الملف " بسبب ان نظام السيف مود لا يقبل الكتابة داخل مجلد المرفقات ليقوم بانشاء مجلد جديد لأي عضو جديد. وهذا هو السبب.


== انتهى ==