A comprehensive web application for managing and showcasing top-rated films, featuring both user and administrative interfaces.
This web application combines dynamic content management with user authentication, providing a platform for movie enthusiasts to explore top-ranked films across various genres. The system features both a public-facing interface for users and a comprehensive admin panel for content management.
- Browse top-rated films with detailed information
- Filter movies by genres/tags
- View comprehensive movie details including:
- Director information
- Release year
- Rankings
- Awards
- Synopsis
- Responsive design for optimal viewing across devices
- Secure authentication system
- Comprehensive dashboard with:
- Total Films counter
- Directors counter
- Total Awards tracker
- Average Rating calculator
- Full CRUD operations:
- Add new films
- Edit existing entries
- Delete films
- Manage tags/genres
-
Frontend:
- HTML5
- CSS (Tailwind CSS + Custom styling)
- JavaScript
- Responsive design principles
-
Backend:
- PHP
- SQLite Database
- PDO for database operations
-
Authentication:
- Session-based authentication
- Secure password hashing
- Role-based access control
Top_Films
: Stores film detailsTags
: Manages genre categoriesFilm_Tags
: Handles many-to-many relationshipsUsers
: Manages user accountsSessions
: Handles user sessions
- PHP 7.4 or higher
- SQLite3
- Web server (Apache/Nginx)
- Clone this repository:
git clone [repository-url]
-
Open as a Codespace on GitHub or as a container in VS Code
-
Start the development server:
- From the Run menu, select Start Debugging
- Visit http://127.0.0.1:8080/
- Username: Admin
- Password: monkey
├── db/
│ └── init.sql # Database initialization
├── includes/
│ ├── db.php # Database connection
│ ├── sessions.php # Session management
│ └── admin/ # Admin components
├── pages/
│ ├── home.php # Main landing page
│ ├── details.php # Film details
│ └── admin_view_all.php # Admin dashboard
└── public/
└── uploads/ # Media storage
- Password hashing
- Session management
- SQL injection prevention
- XSS protection
- CSRF protection
This project is maintained by Stephan Volynets. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License - see the LICENSE file for details.
- Cornell University INFO 2300 course
- All film data is for demonstration purposes
For any questions or support, please contact: [email protected]