E_ラーニング
VNSGU 大学の BCA 6 学期卒業の一環としての E ラーニング Web 開発プロジェクト
特徴 :
ユーザーサイト
- さまざまな言語でのコード実行
- ユーザー - 2 ユーザーのビデオ通話、複数のユーザーが通話に参加可能
- 賛成票/反対票、質問のタグ付け、質問への回答などを含む QnA のディスカッション
- 読解科目 > シラバス > 学習セクション
- Whatsapp、Facebook などで「いいね!」/コメントを付けて記事を読んだり、共有したりできます
- tawk.to チャットでユーザー 2 と管理者の 24 時間 365 日のチャット サポートを実現
- HTML 位置 API と Google リバース ジオコーディング API を使用して、GPS を使用してユーザーの住所を取得する自動住所生成機能
- ユーザーからのフィードバックやアンケートを取るためのユーザー投票
- ユーザー 2 ユーザー チャレンジ。ユーザーは 5 つのランダムな質問ラウンドでお互いに挑戦し、勝者は勝利に対して XP を獲得し、ユーザーの XP に追加されます。
- サイト + メール (HTML メール) 通知でユーザーに QnA と課題の通知が届きます
- QnA 投稿、アンケート、フォロワー、連絡先情報などの詳細を表示するためのユーザー プロファイル。等
- フォロー/フォロー解除、アドレス更新のための ajax
管理者サイト
- ページごとに X レコードのリスト、並べ替え、検索、ページング、PDF、CSV、Excel および印刷、コピーでのデータの取得のために、各ページで Datatables + Ajax を広範囲に使用
- 追加/更新/ブロック/ブロック解除による管理者の管理
- カテゴリ -> コース -> 章を追加/更新/ブロック/ブロック解除で管理
- ブロック/ブロック解除によるセクション (チュートリアル) と記事の管理、WYSIWYG エディターによる追加/更新 + エディター自体から imgur.com に画像を追加することでインスタント画像挿入
- N 個のオプションの追加と投票の開始日と終了日の設定による追加/更新/ブロック/ブロック解除による投票の管理
- 4 つのオプションを追加して追加/更新/ブロック/ブロック解除することでチャレンジ質問を管理します
- ブロック/ブロック解除によるユーザー管理とユーザーの詳細なプロフィール表示
- 質問と回答の両方をブロック/ブロック解除して QnA を管理する
- 追加/更新/ブロック/ブロック解除によるタグの管理
- ユーザーからのフィードバックを管理し、フィードバックに応じてユーザーにメール(HTMLメール)を送信します
- Site+Mail(HTMLメール)システムでフィードバックを受け付けます。
他の
- API アドレスや認証キーをユーザーに公開せずに Google リバース ジオコード API リクエストを呼び出すなど、バックエンドで http リクエストを実行するための cURL の使用
- 検索結果のランキングを向上させるための SEO に適した URL
- ユーザー入力のフィルタリングによる XSS 攻撃の防止と、すべての入力ポイントでの検証による SQL インジェクションの防止。
将来の範囲
- スラッグ(ユーザーフレンドリーなテキスト)によるIDの露出を隠し、SEOも向上します
- セクション(チュートリアル)にdisqussコメントシステムを追加
- Web ページ + DB キャッシュにより、ページの読み込みが高速化されます。
- WYSIWYG エディタをマークダウン エディタに置き換えます。
テックスタック
- サーバー - Apache 2.4.29
- バックエンド言語 - PHP 7.2.1
- フレームワーク - Codeigniter 3.1.8 MVC フレームワーク
- DB - MySQL
- フロントエンド - HTML5、Bootstrap3
- コントロールパネル - XAMPP 7.2.1
- エディタ - 崇高なテキスト
Windows でのセットアップ
- 必要な XAMPP バージョンをインストールします。
- Apache の php.ini を開き、
upload_max_filesize
の値を4Mに設定し、ファイルを保存し、Apache と mysql サーバーの両方を起動/再起動します。 - phpmyadmin を開き、
e_learn
のような名前でデータベースを作成します。 - DBが作成されたら、DBのリストからe_learnデータベースを選択し、インポートタブに移動して、
/resources/db/db.sql
にあるSQLファイルをインポートしてgoをクリックし、インポートが完了するまでしばらく待ちます。 -
/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
テーブルの資格情報を使用してログインしてみてください。