電子學習
電子學習網路開發計畫是 VNSGU 大學 BCA 第 6 學期畢業的一部分
特徵 :
使用者站點
- 各種語言的程式碼執行
- 用戶-2用戶視訊通話,多位用戶可加入通話
- 透過向上/向下投票以及標記問題、回答問題等進行 QnA 討論
- 閱讀課程 > 課程大綱 > 學習部分
- 文章閱讀、按讚/評論以及在 Whatsapp、Facebook 等上分享
- tawk.to 聊天,提供 user-2-admin 24x7 聊天支援
- 使用 html 位置 API + 谷歌反向地理編碼 API 自動地址產生器透過 GPS 取得使用者位址
- 用戶投票以獲取用戶的回饋或調查
- 用戶-2-用戶挑戰,用戶互相挑戰 5 輪隨機問題,獲勝者獲得 XP,勝利後將添加到用戶的 XP 中
- 現場 + 郵件(html 郵件)通知,使用者收到 QnA 和挑戰的通知
- 用於查看 QnA 貼文、民意調查、追蹤者、聯絡資訊等詳細資訊的使用者個人資料。 ETC
- ajax 用於追蹤/取消追蹤、地址更新
管理站點
- 在每頁上廣泛使用 Datatables + Ajax,用於列出每頁 X 條記錄、排序、搜尋、分頁以及獲取 PDF、CSV、Excel 和列印、複製中的數據
- 透過新增/更新/封鎖/取消封鎖來管理管理員
- 管理類別 -> 課程 -> 透過新增/更新/封鎖/取消封鎖的章節
- 透過阻止/取消阻止管理部分(教程)和文章,使用所見即所得編輯器添加/更新+透過從編輯器本身將圖像添加到 imgur.com 進行即時圖像插入
- 透過新增/更新/封鎖/取消封鎖來管理民意調查,並新增 N 個選項並設定民意調查開始和結束日期
- 透過新增/更新/封鎖/取消封鎖並新增 4 個選項來管理挑戰問題
- 透過封鎖/取消封鎖和用戶的詳細個人資料檢視來管理用戶
- 透過阻止/取消阻止問題和答案來管理 QnA
- 透過新增/更新/封鎖/取消封鎖來管理標籤
- 透過向使用者發送郵件(html 郵件)來回應回饋來管理使用者回饋
- 現場+郵件(html郵件)系統回饋。
其他
- 使用 cURL 在後端執行 http 請求,例如呼叫 google 反向地理編碼 API 請求,而不向使用者暴露 API 位址或驗證金鑰
- SEO 友善的 URL 可提高搜尋結果排名
- 透過過濾使用者輸入來防止 XSS 攻擊,並透過在所有輸入點進行驗證來防止 SQL 注入。
未來範圍
- 透過 slugs(用戶友好的文本)隱藏 ID 的暴露,這也改善了 SEO
- 在Section上新增disquss評論系統(教學)
- 網頁+資料庫快取可加快頁面載入速度。
- 用 Markdown 編輯器取代 WYSIWYG 編輯器。
技術堆疊
- 伺服器 - 阿帕契 2.4.29
- 後端語言 - PHP 7.2.1
- 框架 - Codeigniter 3.1.8 MVC 框架
- 資料庫-MySQL
- 前端 - HTML5、Bootstrap3
- 控制面板 - XAMPP 7.2.1
- 編輯器 - Sublime Text
在 Windows 上設定
- 安裝所需的 XAMPP 版本。
- 開啟apache的 php.ini 並將
upload_max_filesize的值設為4M ,儲存文件,啟動/重新啟動apache和mysql伺服器。 - 開啟 phpmyadmin,建立一個名為
e_learn資料庫 - 建立資料庫後,從資料庫清單中選擇e_learn資料庫,然後前往匯入標籤並匯入位於
/resources/db/db.sql sql 文件,然後按一下“執行”,等待一段時間匯入完成。 - 開啟
/application/config/config.php並將$config['base_url']設定為專案的主頁,例如,如果您的專案位於名為e_learn的目錄中,則設為 http://localhost/e_learn/ 並且儲存文件。 - 開啟
/application/config/database.php並設定hostname 、 username 、 password和database欄位並儲存檔案。 - 造訪 http://localhost/e_learn,應該會顯示使用者的登入/註冊頁面,嘗試使用資料庫中
tbluser表中的憑證登入。 - 同樣,嘗試訪問 http://localhost/e_learn/admin ,管理員的登入頁面應該顯示,嘗試使用資料庫中
tbladmin表中的憑證登入。