التعلم الإلكتروني
مشروع تطوير الويب للتعلم الإلكتروني كجزء من تخرج الفصل الدراسي السادس لـ BCA في جامعة VNSGU
سمات :
موقع المستخدم
- تنفيذ التعليمات البرمجية بلغات مختلفة
- مكالمة فيديو بين مستخدمين، يمكن لعدة مستخدمين الانضمام إلى المكالمة
- مناقشة QnA مع التصويت لأعلى/لأسفل ووضع علامات على الأسئلة والإجابة على الأسئلة وما إلى ذلك
- دورات القراءة > المنهج > قسم التعلم
- قراءة المقالة مع الإعجاب/التعليق والمشاركة على Whatsapp وFacebook وما إلى ذلك
- tawk.to للدردشة لدعم الدردشة على مدار 24 ساعة طوال أيام الأسبوع من مستخدمين إلى مشرفين
- منشئ العناوين التلقائي باستخدام واجهة برمجة تطبيقات موقع html + واجهة برمجة تطبيقات الترميز الجغرافي العكسي لـ google لجلب عنوان المستخدم باستخدام نظام تحديد المواقع العالمي (GPS).
- استطلاع المستخدم لتلقي التعليقات أو الاستطلاع من المستخدمين
- تحدي مستخدم لمستخدمين، يتحدى المستخدم بعضهم البعض في 5 جولات أسئلة عشوائية ويحصل الفائز على XPs للفوز والتي تتم إضافتها إلى XP الخاص بالمستخدم
- إشعار على الموقع + البريد (بريد html) حيث يتم إخطار المستخدم بخصوص سؤال وجواب والتحديات
- ملف تعريف المستخدم لعرض التفاصيل مثل منشورات QnA واستطلاعات الرأي والمتابعين ومعلومات الاتصال. إلخ
- اياكس للمتابعة/إلغاء المتابعة، تحديث العنوان
موقع المشرف
- الاستخدام الموسع لـ Datatables + Ajax في كل صفحة لإدراج سجلات X في كل صفحة، والفرز والبحث والترحيل وجلب البيانات في PDF وCSV وExcel والطباعة والنسخ
- إدارة المسؤولين عن طريق إضافة/تحديث/حظر/إلغاء الحظر
- إدارة الفئة -> الدورات -> الفصول عن طريق الإضافة/التحديث/الحظر/إلغاء الحظر
- إدارة القسم (البرنامج التعليمي) والمقالات عن طريق الحظر/إلغاء الحظر، والإضافة/التحديث باستخدام محرر WYSIWYG + الإدراج الفوري للصور عن طريق إضافة الصور إلى imgur.com من المحرر نفسه
- إدارة الاستطلاعات عن طريق إضافة/تحديث/حظر/إلغاء الحظر مع إضافة خيارات N وتحديد تاريخ بدء وانتهاء الاستطلاع
- إدارة أسئلة التحدي عن طريق إضافة/تحديث/حظر/إلغاء الحظر مع إضافة 4 خيارات
- إدارة المستخدم عن طريق الحظر/إلغاء الحظر وعرض الملف الشخصي التفصيلي للمستخدم
- إدارة QnA عن طريق الحظر/إلغاء الحظر على كل من الأسئلة والأجوبة
- إدارة العلامات عن طريق إضافة/تحديث/حظر/إلغاء الحظر
- إدارة تعليقات المستخدمين من خلال إرسال رسائل البريد الإلكتروني (رسائل HTML) إلى المستخدم ردًا على التعليقات
- في الموقع + نظام البريد (بريد HTML) للتعليقات.
آخر
- استخدام cURL لتنفيذ طلب http في الواجهة الخلفية على سبيل المثال، لاستدعاء طلب واجهة برمجة التطبيقات للترميز الجغرافي العكسي لـ google دون الكشف عن عنوان واجهة برمجة التطبيقات أو مفتاح المصادقة للمستخدمين
- عناوين URL صديقة لمحركات البحث (SEO) لتحسين ترتيب نتائج البحث
- منع هجوم XSS عن طريق تصفية مدخلات المستخدم ومنع حقن SQL عن طريق التحقق من الصحة في جميع نقاط الإدخال.
النطاق المستقبلي
- إخفاء تعرض المعرفات عن طريق البزاقات (نصوص سهلة الاستخدام) مما يعمل أيضًا على تحسين تحسين محركات البحث
- إضافة نظام التعليق disquss على القسم (البرنامج التعليمي)
- صفحة الويب + التخزين المؤقت لقاعدة البيانات لتحميل الصفحات بشكل أسرع.
- استبدل محرر WYSIWYG بمحرر تخفيض السعر.
TechStack
- الخادم - أباتشي 2.4.29
- لغة الواجهة الخلفية - PHP 7.2.1
- الإطار - إطار عمل Codeigniter 3.1.8 MVC
- قاعدة البيانات - ماي إس كيو إل
- الواجهة الأمامية - HTML5، Bootstrap3
- لوحة التحكم - XAMPP 7.2.1
- محرر - نص سامية
الإعداد على النوافذ
- قم بتثبيت إصدار XAMPP المطلوب.
- افتح php.ini الخاص بـ Apache وقم بتعيين قيمة
upload_max_filesize
على 4M ، واحفظ الملف، وابدأ/أعد تشغيل كل من خادم Apache وmysql. - افتح phpmyadmin، وأنشئ قاعدة بيانات باسم مثل
e_learn
- بمجرد إنشاء قاعدة البيانات، حدد قاعدة بيانات e_learn من قائمة قاعدة البيانات وانتقل إلى علامة التبويب "استيراد" وقم باستيراد ملف SQL الموجود في
/resources/db/db.sql
وانقر فوق "انتقال"، وانتظر بعض الوقت حتى ينتهي الاستيراد. - افتح
/application/config/config.php
وقم بتعيين $config['base_url']
على الصفحة الرئيسية للمشروع على سبيل المثال اضبطه على http://localhost/e_learn/ إذا كان مشروعك داخل الدليل المسمى e_learn
واحفظ الملف . - افتح
/application/config/database.php
وقم بتعيين hostname
username
password
وحقول database
واحفظ الملف . - تفضل بزيارة http://localhost/e_learn وستظهر صفحة تسجيل الدخول/التسجيل الخاصة بالمستخدم، حاول تسجيل الدخول باستخدام بيانات الاعتماد من جدول
tbluser
في قاعدة البيانات. - وبالمثل، حاول زيارة http://localhost/e_learn/admin وستظهر صفحة تسجيل دخول المسؤول، حاول تسجيل الدخول باستخدام بيانات الاعتماد من جدول
tbladmin
في قاعدة البيانات.