1. تشغيل MkFramework

 

  1. التحميل و التثبيت 

 

بإمكانكم تحميل إحدى آخر نسخ البرنامج من الموقع الرسمي للفريمورك، يتوفر الموقع بلغتين (الإنجليزية و الفرنسية). خلال هذا الدرس ستكون الرسومات و الصور باللغة الفرنسية، الأشخاص الذين يستعملون اللغة الإنجليزية لن يجدوا صعوبة التأقلم ما دام هذا الدرس باللغة العربية.

بعد تحميل الرزمة يجب فكها و وضعها داخل الملف www للخادم Wamp او حيث تضعون مواقعكم ( بطبيعة الحال بإمكانكم إعادة تسمية الملف الجذر من mkframework_v4xxxx الى الإسم الذت تريدونه للموقع). إفتحوا متصفحكم على إسم الملف لتروا النتيجة :

 

 

لإستكمال التثبيت، ينصح بتحديث الوثيقة site.ini.php الموجودة في الملف conf عبر تعويض الإنكودين من 

[encodage]
charset=ISO-8859-1

الى

[encodage]
charset=UTF-8

 

  1. خلق أول مشروع

 

هنا نحن أمام ثلاثة إختيارات، في هذا الدرس سنختار التطبيق خاليا من الأمثلة Vide. و هذا لا يمنعكم من أخذ أمثلة أو الخيار الثالث الذي سيوفر تلقائيا تسهيلات تضمين البوتستراب، و من تم نخلق المشروع. عندها سنحصل على ثلاثة أزرار سطرناها بألوان مختلفة في الصورة أسفله. 

 

 

في الباب الموالي سنرى بتفصيل القائمتين المترتبتين عن الزر Editer projet و الزر Explorer le projet و التي ستمكننا من تطوير موقعنا. لكن قبل ذلك، لننظر الى شجرة التطبيق، لاحظوا وجود ملف جديد baynaApp في الموقع المبين في الصورة مسطرا بالأحمر.

 

 

و إذا نظرنا الى داخل الملف سنجد ما يلي :

 

 

من جهة أخرى لاحظوا أننا إخترنا في الصورتين أعلاه الملف conf، ليس ذلك إعتباطيا، بل نود لفت إنتباهكم لوجود واحد على مستوى التطبيق و آخر على مستوى كل مشروع، سنرى في ما يلي ما يجب وضعه، خاصة في الوثائق المسماة : connexion.ini.php حيث سنحدد تفاصيل الإتصال بقاعدة البيانات.

 

  1. القائمة Edit project / Editer le projet

 

عندما نضغط على الزر  Editer le projet المسطر أعلاه بالبرتقالي فإننا سنحصل على قائمة من الأدوات كما توضح الصورة الموالية. سنتطرق في هذا الباب لأداة الأولى و الثانية تحديدا.

 

 

  1. Model Layout / Couche model

 

في بادئ الأمر لا بد من الإشارة لأن MkFramework يرتكز على تصميم من نوع M.V.C ( نبذه عن الPHP لفهم سياق M.V.C). و هذا ما يقودنا للأداة الأولى في القائمة Couche model (بالإنجليزية : Model Layout ) : و يتعلق الأمر بخلق النماذج التي سنستعملها. كمثال، لنخلق قاعدة بيانات maktaba و نضع بداخلها الجداول : كتب kotob، مستعملين mostaamilin و إعارة iaara.

CREATE TABLE `mostaamilin` (
  `num_carte` int(11) NOT NULL auto_increment,
  `full_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
   PRIMARY KEY  (`num_carte`)
);

CREATE TABLE `kotob` (
  `num_kitab` int(11) NOT NULL  auto_increment,
  `title` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  `author` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
   PRIMARY KEY  (`num_kitab`)
);

CREATE TABLE IF NOT EXISTS `iaara` (
  `num_iaara` int(11) NOT NULL  auto_increment,
  `date_iaara` datetime NOT NULL,
  `date_restit` datetime DEFAULT NULL,
  `num_mostaamil` int(11) NOT NULL,
  `num_kitab` int(11) NOT NULL,
   PRIMARY KEY  (`num_iaara`)
);

الآن في ملف التطبيق MkFramework و ملف المشروع baynaApp سنقوم بتعديل المصدر connexion.ini.php الموجود داخل الملفين conf كما يلي :

[db]
mysql.dsn="mysql:dbname=maktaba;host=localhost" 
mysql.sgbd=pdo_mysql 
mysql.hostname=localhost 
mysql.database=maktaba 
mysql.username=root 
mysql.password=

تأكدوا فقط من وضعية إسم المستخدم و كلمة السر.

لنعد الآن لواجهة التطبيق، الضغط على الزر Créer la couche model سيقوم المتصفح بتوجيهنا الى أسفل الصفحة، حيث نختار نوع قاعدة البيانات mysql في حالتنا، و من تم تظهر جداولنا التي بالمناسبة ستصبح نماذج داخل الفريمورك.

 

 

لاحظوا وجود طريقة ()getSelect التي بالإمكان إضافتها للنموذج، هذه الطريقة ستساعدنا كثيرا، لذلك إخترنا إستعمالها بالنسبة للنموذج "مستعمل" mostaamilin، ستحول لنا بهذه الطريقة جدولا مفاتيحه هي ارقام بطائق المستعملين و قيمه هي أسماء المستعملين.

يكفي الضغط على الزر Générer / Generate ( بالأحمر في الصورة) لتوليد النماذج المرغوب فيها.

 

لقد تم، بإمكانكم تصفح الثلاث وثائق الممثلة لنماذجنا الثلاثة داخل الملف model.

 

  1. خلق ال CRUD

 

هي تقليص لجملة :Create Read Update Delete و التي تعني : خلق، قراءة، تحديث، حذف. و من تم تظهر أهمية هذه الأداة، إذ ستمكننا من وضع طرق لمختلف العمليات المتصلة بالبيانات، و يتعلق الأمر تحديدا :

  • طاولة لإدراج البيانات.
  • إستمارة لإضافة البيانات.
  • إستمارة لتحديث البيانات.
  • إستمارة لحذف البيانات.
  • و صفحة لعرض البيانات.

انقر على  Créer un module CRUD / "إنشاء وحدة CRUD". مثال "مستعملين"، نحدد ما نريد ثم نضغط على الزر Créer / Create.

 

 

من جهة أخرى تذكروا الخاصيات ()getSelect التي عرفناها سابقا، سنقوم بإستعمالها في إستمارة الإعارة، بحيث سيظهر إسم المستعمل بدل رقم بطاقته، و سيظهر إسم الكتاب بدل ترقيمه :

 

 

بإمكانكم تصفح الملف  baynaApp لتروا بأعينكم كمية المصادر التي تم توليدها من طرف الفريمورك .. دون أن نخط شيئا!

 

  1.  التعرف على الروابط و تكوينها

 

نخصص هذا الفصل هنا للروابط بعدما أنهينا شطر إدارة البيانات، و سنتطرق تحديدا لروابط معالجة هذه البيانات، نكتب :

http://localhost/mkframework_v4_107_0_r266/data/genere/baynaApp/public/index.php?:nav=mostaamilin::list

في هذه الحالة نطلب لائحة المستعملين، و بما أننا لم نضف بعد بيانات تظهر اللائحة شاغرة مع رابط لخلق مستعمل جديد. هنا إستعملنا الطلب list، لائحة الطلبات المتوفرة موجودة داخل الملف view لكل نموذج موجود في الملف  module. مثال صفحتي list وnew  للنموذج mostaamilin :

لنضف بعض الكتب و المستعملين، و ها هي إستمارة الإستعارة :

 

في الجزء الموالي من هذا الدرس سوف نكمل جولتنا في القائمة Edit project / Editer le projet مع إستطلاع الجوانب الأخرى في هذا الفريمورك.