E_learn
Проект E Learning Web Development в рамках выпуска 6 семестра BCA в ВНСГУ
ФУНКЦИИ :
Сайт пользователя
- Выполнение кода на разных языках
- Видеовызов «пользователь-2 пользователя», к вызову могут присоединиться несколько пользователей
- Обсуждение QnA с голосованием «за» или «против», пометкой вопросов, ответами на вопросы и т. д.
- Курсы чтения > Программа обучения > Раздел обучения
- Чтение статей с лайками/комментариями и публикациями в Whatsapp, Facebook и т. д.
- Чат tawk.to для поддержки чата user-2-admin 24x7
- Автоматический генератор адресов с использованием HTML-API местоположения + API обратного геокодирования Google для получения адреса пользователя с помощью GPS
- Опрос пользователей для получения отзывов или опросов пользователей.
- Соревнование «Пользователь-2-Пользователь», пользователи бросают вызов друг другу в раунде из 5 случайных вопросов, и победитель получает очки опыта за победу, которые добавляются к опыту пользователя.
- На сайте + почта (html-почта). Уведомление, при котором пользователь получает уведомления о вопросах и проблемах.
- Профиль пользователя для просмотра таких деталей, как сообщения QnA, опросы, подписчики, контактная информация. и т. д.
- ajax для подписки/отписки, обновление адреса
Администратор сайта
- Широкое использование таблиц данных + Ajax на каждой странице для перечисления X записей на странице, сортировки, поиска, разбиения на страницы и получения данных в PDF, CSV, Excel и печати, копировании.
- управление администраторами путем добавления/обновления/блокировки/разблокировки
- управление категориями -> Курсы -> Главы путем добавления/обновления/блокировки/разблокировки
- управление разделом (руководством) и статьями путем блокировки/разблокировки, добавления/обновления с помощью редактора WYSIWYG + мгновенная вставка изображений путем добавления изображений на imgur.com из самого редактора
- управление опросами путем добавления/обновления/блокировки/разблокировки с добавлением N опций и установкой даты начала и окончания опроса
- управление контрольными вопросами путем добавления/обновления/блокировки/разблокировки с добавлением 4 опций
- управление пользователем путем блокировки/разблокировки и подробного просмотра профиля пользователя
- управление QnA путем блокировки/разблокировки вопросов и ответов
- управление тегами путем добавления/обновления/блокировки/разблокировки
- управление отзывами пользователей с отправкой писем (html-сообщений) пользователю в ответ на отзыв
- На сайте + Mail(html mail) система для обратной связи.
Другой
- Использование cURL для выполнения http-запроса в серверной части, например, для вызова запроса API обратного геокодирования Google без раскрытия адреса API или ключа аутентификации пользователям.
- SEO-дружественные URL-адреса для лучшего ранжирования в результатах поиска.
- Предотвращение XSS-атак путем фильтрации пользовательского ввода и предотвращения внедрения SQL путем проверки во всех точках ввода.
Будущая сфера применения
- Скрытие идентификаторов с помощью слагов (удобных для пользователя текстов), что также улучшает SEO.
- добавление системы комментариев disquss в раздел (учебник)
- Веб-страница + кеширование БД для более быстрой загрузки страниц.
- замените редактор WYSIWYG редактором уценки.
ТехСтек
- Сервер - Апач 2.4.29
- Язык бэкэнда — PHP 7.2.1
- Фреймворк — фреймворк Codeigniter 3.1.8 MVC
- БД — MySQL
- Фронтенд — 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
в базе данных.