الموقع الرسمي لـ محمد الشناق مبرمج ومطور تطبيقات بي أتش بي
اشترك في احد القوائم البريدية لدينا لتصلك اخر الأخبار والتحديثات
ما يزال هذا المقال بذرة جاري تطويرها ...... ارحب باية افكار على بريدي m.shannaq (at) gmail {dot} com
فكرة طوابير البريد في تطبيقات الانترنت التي تتطلب ارسال رسائل بريد اليكتروني
تجدر الإشارة الى ان هذا المشروع لا يعد تطبيق متكامل ، انه مجموعة من المكتبات التي تم كتابتها او الإستعانه بها لإداء وظيفة معينة يمكن استخدامها في التطبيقات الأخرى. يمكنك استخدامه في التطبيق الخاص بك او يمكن بناء تطبيق جديد بناء عليه ولكن لا يمكن استخدامه بشكل منفصل حيث انه لم يتم انشاءه للقيام بذلك.
تهدف فكرة انشاء مكتبة خاصة بطوابير البريد الى:
البدء بالمشروع
سوف اراعي اثناء تنفيذ المشروع ان تعمل ملفات المشروع على PHP 4.4.7 وعلى نظام قواعد البيانات MySQL 4.1.x. علما بانه تم تجربتها على PHP 5.2.3 مع قواعد البيانات MySQL 5.x ولم الاحظ اي مشكلة تذكر.
طريقة الإرسال الفعلية للرسائل: سوف اراعي ارسال الرسائل بالطريقة التقلدية عن طريق الأمر mail والمدمج اساس بلغة بي اتش بي، وايضا عن طريق استخدام ال SMTP الخاص بنا بعد الاستعانه ببعض المكتبات المتخصصة في هذا المجال. وسوف تكون الطريقتين متوفرتين بحيث نستطيع فيما بعد عن الإرسال اختيار احدهما. حيث يمكن من ملف الاعدادت (config.php) اختيار الطريقة المناسبة لإرسال الرسائل.
ملفات المشروع
المشروع الأساسي مقسم الى ثلاث ملفات اساسية ، منهم ملفان PHP والمسؤلين عن تنظيم الطوابير، والملف الثالث هو ملف SQL وهو تركيبة جداول الطوابير. اما باقي الملفات فهي ملفات مساعدة الهدف منها هو ضمان عمل نظام الطوابير.
بالرغم من انه هناك ملف config.php والذي يحتوي على الإعدادت العامة للنظام ، وقد يعتبر اساسيا لكنني سوف لن اعتبره اساسيا لانني قد استغني عنه في برمجياتي واستخدم الإعدادت في قاعدة البيانات او في ملف الإعدادات الأساسي الخاص بالتطبيق الذي اقوم بانشاءه.
على هامش ملفات المشروع ، سوف استخدم كما ذكرت سابقا بعض الملفات المساندة والتي سوف تساعد على تنفيذ نظام طوابير البريد ، احد اهم هذه المكتبات هو مكتبة ارسال البريد عبر منفذ SMTP والتي تسمى بالإنجليزية (SMTP E-mail sending class) لكاتبها (Manuel Lemos) ، يمكن تحميل هذه المكتبة والمكتبات التي تعتمد عليها هذه المكتبة من موقعها الأصلي علما بانها مرفقه مع ملفات المشروع. علما بان هذه المكتبة تحتاج الى مكتبة اخرى وهي (Simple Authentication and Security Layer) وهي مطلوبة في حالة كانت منفذ ارسال البريد (SMTP) يتطلب تخويلا بالإرسال وهي ايضا مرفقة مع رزمة المشروع. كذلك سوف استخدم مكتبة (MIME E-mail message sending) وهي التي تتيح صياغة الرسائل بتنسيق MIME وهي التي تمكننا من ارسال المرفقات مع الرسائل و تضمين الصور الى الرسائل وارسال رسائل html او بعدة صيغ الى عناوين البريد الإليكتروني. وجميع هذه المكتبات والملفات الأخرى المساندة موجودة داخل مجلد smtp ضمن ملفات المشروع.ايضا سوف تجد في ملفات المشروع مجلد باسم examples هو يحتوي على ملفات PHP كامثلة على استخدام مشروع نظام ارسال رسائل البريد بنظام الطوابير وكيفية وضع الرسائل في الطابور ومعاينة محتويات الطابور ... الخ ، ارجوا الملاحظة الى عدم استخدام هذه الملفات والموجودة داخل مجلد (examples) بشكل مباشر او استخدامها كتطبيق مباشر اذ انني لم استخدم مدى قابليتها لخدمة العموم، انها فقط لتجربة نظام الطوابير. انصحك بانشاء ملفاتك الخاصة للقيام بتلك المهمات وحسب حاجتك.
تحليل ملفات المشروع الأساسية
كعادتي في التحليل سوف ابدا اولا بتحليل جداول قاعدة البيانات
كما ذكرت سابقا هو الملف الذي يحتوي على تركيبة جدول قواعد البيانات التي سوف يحتاجها المشروع لإنشاء نظام ارسال رسائل البريد بنظام الطوابير.هناك جدولين اساسين لنظام الطوابير ، جدول الرسائل التي تصطف على الطابور والتي لم ترسل بعد والذي سوف نسميه (mailqueu) والجدول الذي يحتوي على الرسائل التي تم ارسالها بالفعل وسوف نسميه (sentmail). يعرض بادناه تركيبة كل من الجدولين:
رخصة استخدام المشروع
لم تحدد بعد
تاريخ بداية العمل على المشروع: 1-7-2007تاريخ نهاية العمل على المشروع: (غير متوفر)