تسجيل دخول
ملاحظة
الموقع متاح للإطلاع والقراءة فقط، المشاركة والمواضيع الجديدة غير متاحة حالياً لحين تطوير الموقع.
الموقع متاح للإطلاع والقراءة فقط، المشاركة والمواضيع الجديدة غير متاحة حالياً لحين تطوير الموقع.
تبادل خبرات البرمجة تبادل الخبرات في جميع لغات البرمجة
Php , Asp , Ajax , Xml , Css , JavaScript ...etc
02-08-2006, 02:35 AM
عضو
تاريخ التسجيل: Mar 2006
مشاركة: 62
مستوى تقييم العضوية:
20
[درس] برمجـة مركـز تحميـل متكامــل !!
السلام عليكم
في البدايه اعجبني هذا الدرس وحبيت اطرحه للفائده ولو كانت بسيطه ..
حتى تستطيع ان تبرمج سكربت تحميل الملفات بنفسك .. وبعدين في نهايه هذا الدرس بيكون السكربت بسيط جدا .. لكن فيما بعد بعد ما تفهم الطريقه وكيفيه انشاءه .. سوف تقوم بإضافه اضافات خفيفه .. مثل عدد الصور في القاعده وعدد لمتواجدون حالياً والخ .. وتصمم له استايل ايضا .. سوالف بسيطه هذي بس اهم شي يا اخوان كيفيه برمجته
وان شاء الله يعجبكم يارب .. وحفظاً للحقوق الدرس منقول من أخوانا في http://www.php-ar.com
بسم الله ..
سنتعلم كيف ننشيء ملف ويتم عن طريقة تحميل الملفات من الجهاز
اولا سنحتاج الى عمل فورم بسيط فيه حقل لاستعراض الملف من الجهاز ، وزر لارسال الملف ..
< form method = 'POST' enctype = 'multipart/form-data' action = 'up.php' >
< input type = 'file' name = 'fileup' size = '20' >
< input type = 'submit' value = 'تحميل' >
</ form >
احفظ الكود السابق في صفحة html باي اسم
ملاحظات على الكود :
1. تم تعين اتجاه الفورم الى صفحة up.php .
2. الكود التالي :
enctype = 'multipart/form-data'
هو الكود الخاص بعرض حقل الاستعراض لاختيار الملف .
3. اسم حقل الملف هو fileup .
الان نأتي الى كود صفحة up.php
اولا سنحتاج الى تعريف ( المسار ) لتحميل الملفات ..
لمعرفة المسار ضع الكود التالي باي صفحة php
<?
echo realpath ( "files" );
?>
وغالبا اكثر المواقع يكون المسار لها هو
اقتباس: </FONT>
/home/User/public_html/files </FONT>
استبدل User باسم الدخول الى حساب ftp لموقعك .. مع وضع ملف files بالمجلد www مباشرة . او ضع المسار الصحيح للمجلد ..
سنضع المسار بمتغير :
<?
$path = "/home/[color=" red "]User /public_html/files";
?>
[/color]
ايضا سنضيف الى المسار اسم الملف وهو تلقائي معرف من php كالتالي :
$path .= "/$fileup_name" ;
الان طريقة تحديد الامتدادات المسموحه
نضع الامتدات بمتغير مصفوفه ...
$alemtdadat = array( '.gif' , '.pmb' , '.jpg' , '.jpgf' , '.zip' );
الان نظهر امتداد الملف المختار عن طريق هذه الدالة strrchr();
$att = strrchr ( $fileup_name , '.' );
و وضعناه بمتغير جديد ..
الان نستخدم دالة in_array() للتأكد من وجود امتداد الملف في الامتدادات المصفوفه حقنا ..
if(! in_array ( $att , $alemtdadat )){
echo " عفوا هذا الامتداد غير مسموح به !!" ;
}else{
// البقية
الان طريقة تحديد حجم الملف ..
نضع متغير جديد فيه اكبر حجم مسموح به
$maxsize = "81920" ;
// تعادل 80 كيلوبايت
الان نطلع حجم الملف المختار عن طريق دالة filesize();
$file_size = filesize ( $fileup );
الان نعمل شرط اذا كان حجم الملف اكبر من الحجم الاكبر المحدد من قبل المدير نطلع له رساله توضح بذلك .
وبالتالي حدث تغير على الكود السابق
if(! in_array ( $att , $alemtdadat )){
echo " عفوا هذا الامتداد غير مسموح به !!" ;
}else if( $file_size > $maxsize ){
echo " حجم الملف المختار اكبر من الحجم الاقصى " ;
}else{
// بقية الملف
سنستخدم دالة copy لنسخ الملف وطريقة كتابتها كالتالي :
$CopyFile = copy ( $fileup , "$path" );
الان سنعمل كود لمعرفة نتيجة الكود السابق ان تم تحميل الملف سنظهر له رسالة بنجاح التحميل مع رابط الملف المحمل ..
if( $CopyFile ){
echo " تم تحميل الملف بنجاح ، رابط الملف : " ;
echo "<a href='http://$HTTP_HOST/$fileup_name'>http://$HTTP _HOST/$fileup_name</a>" ;
}else{
echo " لم يتم تحميل الملف " ;
}
نقفل الوسوم
}
}
}
الان كود up.php كامل
<?
if( $fileup == "" ){
ECHO " قم باختيار الملف المراد تحميله " ;
}else{
$path = "/home/User/public_html/files" ;
$path .= "/$fileup_name" ;
$att = strrchr ( $fileup_name , '.' );
$alemtdadat = array( '.gif' , '.jpg' , '.jpgf' , '.zip' , '.rar' );
$maxsize = "81920" ;
$file_size = filesize ( $fileup );
if(! in_array ( $att , $alemtdadat )){
echo " عفوا هذا الامتداد غير مسموح به !!" ;
}else if( $file_size > $maxsize ){
echo " حجم الملف المختار اكبر من الحجم الاقصى " ;
}else{
$CopyFile = copy ( $fileup , "$path" );
if( $CopyFile ){
echo " تم تحميل الملف بنجاح ، رابط الملف : " ;
echo "<a href='http://$HTTP_HOST/files/$fileup_name'>http:// $HTTP_HOST/files/$fileup_name</a>" ;
}else{
echo " لم يتم تحميل الملف " ;
}
}
}
?>
مع التحيه
للإمانه منقول
التوقيع
www.arabuae4host.com
الاسم :
مناف عبدالحميد عبدالماجد نصر
رقم الهاتف :
4991811
الدولة :
المدينة : الامارات - الشارقة
02-08-2006, 03:05 AM
عضوية مغلقة
تاريخ التسجيل: May 2006
مشاركة: 149
مستوى تقييم العضوية:
0
شكرا لك اخي الغالي arabuae4host.com على هاذا الدرس الجميل
وجاري التجربة...
اخي لدي سؤل من فضلك وهوة:
ما هو افضل سكربيت تحميل من ناحية الامان؟
تحيتي:
اخوك الرسالة
02-08-2006, 03:22 AM
عضو
تاريخ التسجيل: Mar 2006
مشاركة: 62
مستوى تقييم العضوية:
20
العفوا اخوي الغالي
والله عزيزي حتي الان ما شفت سكربت خالي من الخطر
99% من سكربتات التحميل لازم يكون فيها ثغره
فصعب تلقى سكربت امن عزيزي
شكرا
التوقيع
www.arabuae4host.com
الاسم :
مناف عبدالحميد عبدالماجد نصر
رقم الهاتف :
4991811
الدولة :
المدينة : الامارات - الشارقة
26-09-2006, 10:39 AM
عضو
تاريخ التسجيل: May 2006
المدينة: أم الدنيا
مشاركة: 179
مستوى تقييم العضوية:
19
تسلم يمينك مناف
سيتم التطبيق
التوقيع
الوقت هوست لحلول و تطبيقات الويب المتكاملة
شركة رسمية معتمده
الهدف ليس تقديم الخدمات , آنما تقديم الرعاية ايضآ
http://alwqt4host.com
05-10-2006, 03:02 AM
عضو
تاريخ التسجيل: Apr 2006
مشاركة: 22
مستوى تقييم العضوية:
0
شكرا لك على الطريقة و ان شاء الله تشتغل معاي.
05-10-2006, 03:32 AM
عضو
تاريخ التسجيل: Sep 2004
مشاركة: 562
مستوى تقييم العضوية:
22
تسلم يا الغالي ابدعت والله بلنقل والفائده
تحياتي لك
16-10-2006, 01:09 PM
عضو
تاريخ التسجيل: Feb 2006
مشاركة: 38
مستوى تقييم العضوية:
0
تسلم يمينك مناف
سيتم التطبيق
16-10-2006, 04:29 PM
عضو
تاريخ التسجيل: Jul 2006
مشاركة: 188
مستوى تقييم العضوية:
19
/
ممكن تفهمني هاي الخطوة ياخوي
ومشكور على الدرس
التوقيع
أسم الشركــه : الحـلـم هـوسـت
بريد طلبات الأستضافـة:host@dre4host.com
10-11-2006, 01:01 PM
عضو
تاريخ التسجيل: Oct 2006
مشاركة: 15
مستوى تقييم العضوية:
0
مشكوور اخي و ما قصرت تسلم و الله مركز تحميل ملفات ميه ميه
02-12-2006, 08:01 AM
عضو
تاريخ التسجيل: Jul 2006
المدينة: في قلب الحصار الأمريكي الظالم
مشاركة: 225
مستوى تقييم العضوية:
19
أخي الكريم درس متعوب عليه
ولكن دالة copy() أصبحت محجوبة لدى أكثر السيرفرات
فما رأيك بطرح البديل ؟
27-07-2007, 05:18 AM
عضو
تاريخ التسجيل: Jul 2007
المدينة: الكمبيوتر والأنترنت
مشاركة: 55
مستوى تقييم العضوية:
18
بارك الله فيك
التوقيع
سبحان الله وبحمده سبحان الله العظيم
خيارات الموضوع
طريقة العرض
النمط المتتابع
قوانين المشاركة
لا يمكنك إضافة موضوع جديد
لا يمكنك الرد على المواضيع
لا يمكنك إضافة مرفقات
لا يمكنك تعديل مشاركاتك
كود HTML مغلق