استعمل مربع البحث في الاسفل لمزيد من المواضيع
سريع للبحث عن مواضيع في المنتدى
-
11-01-2013, بتوقيت غرينيتش 03:37 PM
#1
درس مفصل : طريقة برمجة صفحة رفع الملفات بروابط مباشرة على السيرفر SERVER
ط¯ط±ط³ : ط·ط±ظٹظ‚ط© ط¨ط±ظ…ط¬ط© طµظپط*ط© ط±ظپط¹ ط§ظ„ظ…ظ„ظپط§طھ ط¨ط±ظˆط§ط¨ط· ظ…ط¨ط§ط´ط±ط© ط¹ظ„ظ‰ ط§ظ„ط³ظٹط±ظپط±
السلام عليكم ورحمة الله وبركاته
صراحة دي أول مرة أشرح طريقة فيها درس مفصل
فاعذروني لو أخطأت أو كان شرح طريقةي غير واضح
زي ما قلت في العنوان سنتعلم اليوم كيفية برمجة صفحة لرفع الملفات على السيرفر SERVER بتاعنا
و بالنسبة لرفعها في قاعدة بيانات فقد قام الأخ Mr.Ajax بشرح طريقةها في الموضوع التالي
حفظ ملف الى داتا بيز MySql
أول حاجة نقوم بتصميم صفحة html تحتوي على فورم الإرسال لصفحة الـhtml
و في الفورم لازم نخلي بالنا من وجود رمز PHP:
<code style="white-space:nowrap"> <code> enctype="multipart/form-data"
</code> </code>
بمعنى إنها تكون بالشكل ده
رمز PHP:
<code style="white-space:nowrap"> <code> <form action="upload.php" method="post" enctype="multipart/form-data">
</code> </code>
و نضع في الفورم خانة اختيار الملف وهي
رمز PHP:
<code style="white-space:nowrap"> <code> <input type="file" name="file" />
</code> </code>
ثم زر الإرسال
بحيث تكون الفورم بالشكل التالي
رمز PHP:
<code style="white-space:nowrap"> <code> <form action="upload.php" method="post" enctype="multipart/form-data">
Select the file You want to upload
<input type="file" name="file" />
<br />
<input type="submit" name="submit" value="send"/>
</form>
</code> </code>
ثم نقوم ببرمجة صفحة استقبال ورفع الملف و ليكن اسمها upload.php
أول شيئ نقوم بالتأكد منه هو وجود أخطاء في الملف المرفوع أم لا ؟
وذلك عن طريق الشرط التالي
رمز PHP:
<code style="white-space:nowrap"> <code> if($_FILES['file']['error']==0){
//بقية الكود code سيوضع هنا..
}
</code> </code>
ثم نتأكد من نوع الملف إذا كان مسموح به أم لا حتى لا يرفع أحد ملف شيل أو شيئ
طب ازااااااااااي ؟؟
أول حاجة نعمل مصفوفة تحتوي على أنواع الملفات المسموح بها ..
وليكن ..
رمز PHP:
<code style="white-space:nowrap"> <code> $available_types=array('image/png','image/jpeg','image/gif','application/octet-stream','application/x-shockwave-flash');
</code> </code>
ثم نتأكد إذا كان الملف من ضمن هذه الأنواع أم لا ؟
رمز PHP:
<code style="white-space:nowrap"> <code> if (in_array($_FILES['file']['type'],$available_types)){
// يوضع الكود code هنا
}
</code> </code>
ثم نقوم بجلب محتويات الملف عن طريق الدالة file_get_contents
رمز PHP:
<code style="white-space:nowrap"> <code>
$content=file_get_contents($_FILES["file"]["tmp_name"]
;
</code> </code>
ثم نستبدل المسافات الموجودة في الاسم ب_ استعدادًا لرفعها
رمز PHP:
<code style="white-space:nowrap"> <code>
$name=str_ireplace(" ","_",$_FILES['file']['name']
;
</code> </code>
ثم نجعل إذا كان الملف موجود يضيف له أربع أرقام عشوائية بالنهاية
رمز PHP:
<code style="white-space:nowrap"> <code> while(file_exists($name)){
$name=explode(".",$name);
$dot_before_extention=(count($name)-2);
$random=array(rand(1,9),rand(1,9),rand(1,9),rand(1,9));
$random=implode("",$random);
$name[$dot_before_extention].=$random.".";
$name=implode("",$name);
}
</code> </code>
ثم في النهاية نقوم بوضع ملف على السيرفر SERVER بالاسم و البيانات الموجودة
رمز PHP:
<code style="white-space:nowrap"> <code> $makefile=file_put_contents($name,$content);
if ($makefile){
echo "Added Successfully";
}else{
echo "Error";
}
</code> </code>
أرجو أن يكون الدرس مفصل واضح
و الخلاصة أن نقول
أن رفع الملفات يتم عن طريق مصفوفة موجود بلغة البي اتش بي اسمها $_FILES
يحتوي هذه المصفوفة على عدة بيانات منها
1- error وهي للكشف عن وجود أخطاء أم لا
2- name وهو اسم الملف
3- tmp_name وهو عنوان الملف المؤقت
4- type وهو نوع الملف
إذا كان بالدرس مفصل من توفيق فمن الله وحده و إن كان من خطأ أو سهو أو نسيان فمني
و أرجو أن تزدوني بالملاحظات و الدعاء لي و لوالدي بالهداية و التوفيق
أخوكم Abood Nour
التعديل الأخير كان بواسطة 5lykcool.ch; 18 - 02 - 2014 الساعة 23:32

©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى©
المواضيع المتشابهه
-
بواسطة admin في المنتدى شروحات ،دروس ومشاكل وحلول الاستضافه
مشاركات: 0
آخر مشاركة: 11-02-2013, بتوقيت غرينيتش 02:25 AM
-
بواسطة said في المنتدى شروحات ،دروس ومشاكل وحلول الاستضافه
مشاركات: 0
آخر مشاركة: 11-02-2013, بتوقيت غرينيتش 01:39 AM
-
بواسطة romaissa في المنتدى شروحات ،دروس ومشاكل وحلول الاستضافه
مشاركات: 0
آخر مشاركة: 11-02-2013, بتوقيت غرينيتش 01:06 AM
-
بواسطة said في المنتدى شروحات ،دروس ومشاكل وحلول الاستضافه
مشاركات: 0
آخر مشاركة: 11-02-2013, بتوقيت غرينيتش 12:59 AM
-
بواسطة said في المنتدى Google
مشاركات: 0
آخر مشاركة: 11-01-2013, بتوقيت غرينيتش 11:33 PM
ضوابط المشاركة
- لا تستطيع إضافة مواضيع جديدة
- لا تستطيع الرد على المواضيع
- لا تستطيع إرفاق ملفات
- لا تستطيع تعديل مشاركاتك
-
قوانين المنتدى