A comprehensive web-based assignment management system for teachers to create, distribute, and grade assignments while tracking student progress.
- Teacher Authentication: Secure login system for teachers
- Assignment Management: Create, edit, and manage assignments
- Student Management: Add and manage student information
- Grade Tracking: Mark assignments and track completion rates
- Progress Analytics: View detailed reports and statistics
- Responsive Design: Works on desktop and mobile devices
- PHP 7.4 or higher
- MySQL 5.7 or higher
- Web server (Apache/Nginx)
- XAMPP/WAMP/LAMP stack
-
Download/Clone the project
git clone https://github.com/Anticoder03/assignment-management.git cd assignment-checklist
-
Setup Database
- Start your XAMPP/WAMP server
- Open phpMyAdmin (usually at
http://localhost/phpmyadmin
) - Run the setup script:
http://localhost/assignment-checklist/setup_database.php
- Or manually import
database_schema.sql
-
Configure Database Connection
- Edit
config/database.php
if needed - Default settings (for XAMPP):
- Host:
localhost
- Database:
assignment_main
- Username:
root
- Password: `` (empty)
- Host:
- Edit
-
Access the Application
- Open your browser and navigate to
http://localhost/assignment-checklist
- You'll be redirected to the login page
- Open your browser and navigate to
The system comes with sample teacher accounts:
- Email:
admin@school.edu
- Password:
admin123
Or use the demo credentials shown on the login page.
- Login: Use your credentials to access the system
- Create Assignments:
- Go to "Assignments" page
- Click "Create New Assignment"
- Fill in assignment details and due date
- Add Students:
- Go to "Students" page
- Click "Add New Student"
- Fill in student information
- Mark Assignments:
- Go to "Mark Assignments" page
- Select an assignment
- Enter grades for each student
- Save changes
- View Reports:
- Go to "Reports" page
- View analytics and progress charts
The system uses the following main tables:
teachers
: Teacher information and authenticationstudents
: Student information and enrollmentsubjects
: Subject categories (Mathematics, Science, etc.)assignments
: Assignment details and metadataassignment_submissions
: Student submissions and grades
assignment-checklist/
├── config/
│ ├── database.php # Database connection
│ └── session.php # Session management
├── _Nav.php # Navigation header
├── _Footer.php # Footer
├── index.php # Dashboard
├── login.php # Teacher login
├── logout.php # Logout handler
├── assignments.php # Assignment management
├── mark_assignments.php # Grade assignments
├── students.php # Student management
├── reports.php # Analytics and reports
├── database_schema.sql # Database structure
├── setup_database.php # Database setup script
└── README.md # This file
- Password hashing using PHP's
password_hash()
- SQL injection prevention with prepared statements
- Session-based authentication
- Input validation and sanitization
Edit the subjects
table in your database or modify the sample data in database_schema.sql
.
The system uses Bootstrap 5. You can customize the appearance by:
- Modifying CSS in the
<style>
sections - Adding custom CSS files
- Changing Bootstrap themes
Update config/database.php
with your database credentials:
$host = 'your-host';
$dbname = 'your-database';
$username = 'your-username';
$password = 'your-password';
-
Database Connection Error
- Check if MySQL is running
- Verify database credentials in
config/database.php
- Ensure the
assignment_main
database exists
-
Login Issues
- Make sure you've run the database setup
- Check if the teacher account exists in the database
- Try the default credentials:
admin@school.edu
/admin123
-
Permission Errors
- Ensure web server has read/write permissions
- Check file permissions (755 for directories, 644 for files)
-
Page Not Loading
- Check if PHP is enabled
- Verify web server configuration
- Check error logs for detailed error messages
For issues or questions:
- Check the troubleshooting section above
- Review PHP and MySQL error logs
- Ensure all requirements are met
- Verify file permissions and web server configuration
This project is open source and available under the MIT License.
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
Developed and maintained by Anticoder03