بسم الله الرحمن الرحيم
سنشرح اليوم برمجة مركز رفع ملفات بسيط ذو خصائص جميلة وآمن بإذن الله .
الإعداد :
في هذه الخطوة سنقوم بإنشاء وتنظيم المجلدات التي سنحتاجها ...
أولاً قم بالدخول إلى سيرفرك الشخصي أو موقعك ... ثم قم بإنشاء مجلد جديد بإسم upload , وقم بإنشاء المجلدات التالية بداخلة :
- uploaded .
- includes .
- style .
وبداخل المجلد includes قم بإنشاء مجلد بإسم cache .
وبداخل المجلد style قم بإنشاء مجلد بإسم template .
نظام القوالب :
سنقوم بإستعمال نظام قوالب خفيف لكي يكون السكربت الذي نريد عمله أكثر تنظيماً وقابلية للإستخدام ...
سنستعمل نظام القوالب MOFTemplate Engine يمكنك زيارة الموقع و التعرف عليه أكثر ...
قم بتحميل نظام القوالب من هنا
( للأسف لم أستطع تحميل الملف لذا قمت بإستعمال نسخة سابقه من النظام 1.4.0.1
ولمن لم يستطع التحميل من الموقع الرسمي في هنا رابط آخر ).
بعد تحميل نظام القوالب قم بفك الضغط عنه , سنحتاج للملف moftemplate-engine.php ,
قم بنسخ الملف moftemplate-engine.php ووضعه داخل المجلد includes الذي أنشأناه سابقاً .
انتهينا من تركيب نظام القوالب .
كتابة ملف تعريف نظام القوالب (mof-define.php) :
في هذه الخطوة سنقوم بكتابة ملف تعريف نظام القوالب ,
قم بعمل ملف جديد بإسم mof_define.php داخل المجلد includes , وسيكون هذا محتواه :-
<?
|
في السطر الأول قمنا بتضمين ملف نظام القوالب .
في السطر الثاني قمنا بتشغيل النظام .
في السطر الثالث قمنا بتحديد مجلد القوالب .
في السطر الرابع قمنا بتحديد مجلد الملفات المؤقتة .
كتابة ملف الإعدادات (config.php) :
الآن سنقوم بكتابة ملف إعدادات ومعلومات الموقع الذي سيقوم بتركيب السكربت , الملف كله مُتغيرات ولا أظن انه يحتاج لشرح :
<?
|
هذا هو الملف , طبعاً كله متغيرات ولا يحتاج لشرح ... إلا في السطر الأخير وضعنا مصفوفة تحتوي على الإمتدادات ...
الآن انتهينا من الملف config.php وسنقوم بوضعه داخل المجلد includes ,
الآن أتممنا المجلد includes بجميع ملفاته !
فكرة عن تنظيم ملفات العمل :
سنقوم بتنظيم عملنا لأكبر حد ممكن , لذا سنقوم بوضع يحتوي على المحتوى العلوي لكل الصفحات وملف يحتوي على المحتوي السفلي لكل الصفحات ايضاً !
بمعنى اننا سنقوم بعمل ملف اسمه content_up.php وفيه نضع جميع مانريد ان يكون في اول الملف , وسنضع فيه :
تعريف ملف القوالب , تضمين ملف الإعدادات config.php , إستدعاء الهيدر , وبعض الأكواد الأخرى ...
وملف آخر اسمه content_down.php وسنضع فيه استدعاء للفوتر ...
اي انه بهذا النظام الصفحة الرئيسية لن تكون إلا بِضع أسطر فقط !
إذا لم تفهم المغزى من هذا , فستفهمه لاحقاً .
بخصوص نظام القوالب , لن نستعمل في هذا الشرح إلا المتغيرات فقط و لن نستعمل ادوات شرطيه (if-else-elseif) أو غيرها .... وطريقة طباعة
المتغيرات بنظام القوالب هي {المتغير} فقط .
كتابة الملف content_up.php :
الملف ثم شرحه :
<?
|
في السطر الثاني ايضاً قمنا بتضمين ملف تعريف نظام القوالب .
في السطر الثالث قمنا بوضع امر إظهار قالب الهيدر الذي سننشأه لاحقاً .
كتابة الملف index.php :
الملف index.php وهذا محتواه :
<?
|
السطر الثاني قمنا بقسمة أقصى حجم مسموح به على 1024 لكي نحصل على الحجم بالكيلوبايت لكي نعرضه للزائر .
السطر الثالث قمنا بإستعمال الدالة implode وتستعمل مع المصفوفات لوضع محتواها في متغير وإمكانية طباعة بسهوله , يمكنك البحث عنها بموقع php.net .
السطر الرابع حددنا مسار مجلد الرفع , وهو المجلد uploaded الذي أنشأناه سابقاً .
السطر الخامس قمنا بطلب القالب upload.htm وسننشئه لاحقاً .
السطر السادس قمنا بطلب قالب الفوتر ...
الآن سنقوم بعمل القوالب الثلاثة header,upload,footer ثم سنقوم بعمل ملف الرفع upload.php لاحقاً ...
بخصوص القوالب و التصميم , فـسنقوم بعمل السكربت بتصميم عادي جداً وليس إحترافياً , ويمكنك تعديله لاحقاً على حسب رغبتك :) .
إذا كنت لاتعرف ال HTML او CSS فأنصحك بتعلمها لأهميتها في هذا الوقت , ولن يغنيك عن تعلمها أي برنامج كان !.
القالب header.htm :
| <html dir="rtl"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1256"> <meta http-equiv="Content-Language" content="ar-sa"> <meta name="keywords" content="{meta_open}"> <meta name="description" content="{meta_desc}"> <title>{sitename}</title> </head> <body style="margin:0"> <div align="center"> <table style="border:1px dotted #C0C0C0;width:100%"> <tr> <td style="background-color:#FFFFDB;padding: 0;height:50px"> <p align="center" style="color:maroon;font-size:15pt;font-family:Tahoma"> {sitename}</td> </tr> <tr> <td style="background-color:#808080;color:white;border:0px"> <p align="center"> <b> <a href="index.php"> <span style="color:white;font-size:10pt;font-family:Tahoma;text-decoration: none">الرئيسية</span></a> - <a href="http://phpx3.com"><span style="color:white;font-size:10pt;font-family:Tahoma;text-decoration: none"> رابط آخر</span></a></b></td> </tr> </table> </div>
|
- .في السطر الأول بدأنا وسم الHTML وحددنا بأن إتجاه الصفحه من اليمين لليسار
dir = تعني اتجاه direction , و rtl تعني من اليمين لليسار right to left .
- السطر الثاني بدأنا وسم HEAD وهو بالعاده يوضع فيه اكواد الجافاسكربت و title الصفحه واكواد css غالباً , و مايوضع هنا لايظهر في الصفحة .
- السطر الثالث و الرابع حددنا اللغه والترميز .
- السطر الخامس و السادس حددنا الكلمات المفتاحيه و كلمات الوصف , وهنا وضعنا {meta_open} و {meta_desc}
متغيرات سيتعامل معها نظام القوالب , وهي متغيرات وضعناها في ملف config.php .
- السطر السابع حددنا عنوان الصفحه , وهو اسم الموقع الذي وضعناه بالمتغير sitename في ملف config.php .
- السطر الثامن أغلقنا وسم HEAD .
- السطر التاسع بدأنا بـ وسم body ومايقع تحت هذا الوسم هو محتوى صفحتنا .
- باقي الأسطر وضعنا جدولين جدول فيه اسم الموقع {sitename} وجدول آخر يحتوي على روابط.
انتهينا من قالب الهيدر .
القالب footer.htm :
وسيظهر بالأسفل في كل الصفحات , القالب :
| <br> <div align="center"> <span style="font-family:Tahoma;font-size:8pt;color:teal"> جميع الحقوق محفوظة © {sitename} </span> </div> </body></html> |
واغلقنا الوسوم التي بدأناها بقالب header .
القالب upload.htm :
هذا القالب هو القالب المسؤول عن نموذج الرفع , أي صندوق الرفع .... القالب :
|
<div align="center"> <BR> <table width="760" cellspacing="1" style="border:1px dotted #C0C0C0"> <tr> <td style="background:gray;color:white;height:24px;text-align:center"> <font face="Tahoma" style="font-size: 10pt; font-weight:700" color="#FFFFFF">{sitename}</font></td> </tr> <tr> <td style="background:silver;padding-top:2px;padding-bottom:2px;height:19px;text-align:center;"> <font face="Tahoma" style="font-size: 9pt; font-weight: 700"> {msg}</font></td> </tr> <tr> <td> <table border="1" width="100%" cellpadding="0" style="border-collapse: collapse" bordercolor="#CCCCCC"> <tr> <td width="50%" bgcolor="#ECE9D8"><font face="Tahoma" style="font-size: 9pt"> <span lang="ar-sa"> أقصى حجم مسموح به : </span> <font color="#FF0000">{max_size}</font> <span lang="ar-sa">كيلوبايت .</span></font></td> <td bgcolor="#ECE9D8" width="50%"> <font face="Tahoma" style="font-size: 9pt"> <span lang="ar-sa"> الإمتدادات المسموح بها :<br> </span></font><font color="#FF0000" style="font-size: 8pt" face="Tahoma">{allowed_file_types}</font><font face="Tahoma" style="font-size: 9pt"> .</font></td> </tr> </table> </td> </tr> </table> <form action="upload.php" method="post" enctype="multipart/form-data" name="form1" id="fileup"> <table width="760" border="1" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF" bordercolor="#C0C0C0" style="border:1px dotted #C0C0C0; border-collapse: collapse" id="table5"> <tr> <th bgcolor="#80A5E7"> <font face="Tahoma" style="font-size: 9pt" color="#FFFFFF"> <strong><span lang="ar-sa">رفع الملفات</span></strong></font></th> </tr> <tr> <td> <p align="center"><font face="Tahoma"> <b> <span style="font-size: 9pt" lang="ar-sa">اختر الملف :</span></b><span style="font-size: 9pt"><b> </b> <input name="fileup" type="file" id="fileup0" size="50" style="text-decoration: underline; font-family: Tahoma; font-size: 9pt; border: 1px groove #C0C0C0; padding: 2px; font-weight:700; cursor:hand"></span></font></td></tr><tr> <td align="center" bgcolor="#ECE9D8"> <font face="Tahoma"><span style="font-size: 9pt"> <input type="submit" name="Submit" value="رفــــــــــــع / Upload" style="font-family: Tahoma; color: #FFFFFF; font-variant: small-caps; font-size: 9pt; vertical-align: baseline; border: 1px dotted #C0C0C0; padding: 4px; background-color: #81A7E8; font-weight:700;cursor:hand"> </span> </font> </td> </tr> </table> <BR> |
الملف upload.php المسؤول عن رقم الملفات :
هذا هو الملف المسؤوول عن إحضاء الملف ورفعه , هذا هو الملف مع الشرح بداخله :-
<? |
القالب file-was-upload.htm المسؤول عن عرض نتيجة الملف بعد رفعه :
| <div align="center"> <table style="border:1px dotted silver;width:600px" id="table1"> <tr> <td style="text-align:center;font-size:10pt;font-family:Tahoma;background:black;color:white"> تم تحميل الملف بنجاح ، رابط الملف :<br> <a href="http://{site_url}/{path}" style="color:white;text-decoration:none">http://{site_url}/{path}</a></td></tr> <tr><td style="font-family:Tahoma;color:silver;font-size:9pt;text-align:center"> حجم الملف : <b>{size} </b>كيلوبايت.<BR/> نوع الملف :<b>{type}.</b><BR/> </td></tr> <tr> <TD align="center" bgcolor="#ECE9D8" height="19"> <font color="#808080" style="font-size: 9pt" face="Tahoma"> استخدامات متعددة : </font> </td> </tr> <tr> <td style="font-family:Tahoma;background:white" align="center"> <font face="Tahoma" size="2">للإستعمال كصورة في المنتديات</font><font face="Tahoma" style="font-size: 10pt"> (قم بنسخ مافي المربع والصقه في المنتدى)</font><font face="Tahoma"><font size="2">: </font> <input size='100' value=' [url=http://{site_url}][img]http://{site_url}/{path} [/img][/url]' name="T3"><font size="2"> <br /></font></font></td> </tr> <tr> <td class='thead' align="center"> <font face="Tahoma" size="2">للإستعمال كرابط في المنتديات</font><font face="Tahoma" style="font-size: 10pt"> (قم بنسخ مافي المربع والصقه في المنتدى)</font><font face="Tahoma"><font size="2">: </font> <input size='100' value=' [url=http://{site_url}/{path}] اضغــط هنــا لتحميــل الملــف [/url] ' name="T4"><font size="2"> </font></font> </td> </tr> <tr><td style="font-family:Tahoma;background:silver" align="center"> <font face="Tahoma" size="2"> <b>صفحة HTML :</b></font></td></tr> <br /><tr><td class='thead' align="center"> <font face="Tahoma"><font size="2">للإستعمال كصورة في صفحة <span lang="en-us">HTML</span> : </font> <input size='100' value='<a href="http://{site_url}" target="_blank"><img src="http://{site_url}/{path}"></a>' name="T1"><font size="2"> <br /></font></font></td></tr><tr><td class='thead' align="center"> <font face="Tahoma"><font size="2">للإستعمال كرابط في صفحة <span lang="en-us">HTML </span>: </font> <input size='100' value='<a href="http://{site_url}/{path}" target="_blank">إضغط هنا</a>' name="T2"><font size="2"> </font></font> </td></tr><tr><td class="tcat" align="center"> <form method="POST" action="index.php"> <input type="submit" value="رفع المزيد من الملفات" style="font-weight: 700"></form> </td></tr> </table> </div> |
انتهينا !
أتمنى أن الشرح كان واضحا ومفيد لكم
العمل بالكامل يمكن? تحميله من هنا .
انتهى , وشكراً.

ليست هناك تعليقات:
إرسال تعليق