CS331ProjectGroup1(オンライン書店)

Web

概要

このリポジトリは、NJIT の CS331 コースのグループ課題として作成された「Online Bookstore — Web Application」です。フロントエンドの PHP ページから MySQL データベースを利用する典型的な構成で、データベース作成・サンプルデータ投入・ビュー生成・接続設定・ローカル PHP サーバ起動を自動化する start.sh スクリプトが付属しています。管理者向けのダッシュボードや受注・ユーザー管理画面を備え、学習用のデモ実行が容易です(約300字)。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 3
  • ファイル数: 13
  • メインの言語: PHP

主な特徴

  • PHP と MySQL を用いたシンプルなフルスタック Web アプリ。
  • 管理者用ページ(ダッシュボード、受注管理、ユーザー管理)を実装。
  • start.sh によるデータベース初期化とデモ起動の自動化。
  • 学習・デモ目的に最適なサンプルデータとビューを同梱。

技術的なポイント

このプロジェクトは伝統的な LAMP スタックに近い構成で、PHP ファイルが直接 HTML とロジックを組み合わせて動作するシンプルな実装です。start.sh によって MySQL のデータベース作成、サンプルデータのインポート、ビュー作成、接続設定の更新、そしてローカル PHP サーバの起動までを一括で行えるため、デモ実行のハードルが低く設計されています。開発教育目的のため、フレームワークを使わずに生の PHP コードで CRUD 操作やセッション管理、フォーム処理を学べる点が利点です。一方で、以下の点が改善余地として挙げられます:データベース接続情報や起動スクリプトにパスワードが記載されている点(README の例で MySQL パスワード “Shams123” が示されている)は実運用ではセキュリティリスクとなるため環境変数や secret 管理が望ましいこと、SQL インジェクション対策としてプリペアドステートメントや入力バリデーションの徹底が必要なこと、単一ファイルベースのページ構成は保守性や拡張性の観点で限界があるため、将来的には MVC 構造や Composer ベースの依存管理、ルーティングの導入を検討すると良いでしょう(約700字)。

プロジェクトの構成

主要なファイルとディレクトリ:

  • DEMO_FLOW.txt: file
  • README.md: file
  • admin_dashboard.php: file
  • admin_orders.php: file
  • admin_users.php: file

…他 8 ファイル

まとめ

学習用途のフルスタックPHPデモとして分かりやすく、初学者に向く実装です(約50字)。

リポジトリ情報:

READMEの抜粋:

Online Bookstore - Web Application

CS331-001 - Group 1: Md Uddin, Josh Marquez, Jose Tabuena

This is a web-based application for an Online Bookstore that integrates with a MySQL database.

Quick Start for Demo

Start Demo:

./start.sh

Enter MySQL password when prompted: Shams123

The script will:

  1. Create the database
  2. Import all sample data (Phase 2)
  3. Create the view (Phase 3)
  4. Configure connection
  5. Start PHP server

Then open: http://localhost:8000

To St…