Skip to content

bikram73/parent_teachers_meeting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 

Repository files navigation

Parent-Teacher Meeting Management System

A comprehensive web-based application designed to streamline communication and meeting scheduling between parents and teachers. This system provides separate dashboards for parents and teachers, enabling efficient management of parent-teacher meetings with features like scheduling, status tracking, and student performance monitoring.

๐Ÿš€ Features

Core Functionality

  • User Registration & Authentication: Separate registration for parents and teachers with role-based access
  • Meeting Management: Schedule, update, delete, and track meeting status
  • Role-Based Dashboards: Customized interfaces for parents and teachers
  • Meeting Status Tracking: Track meetings as scheduled, completed, or cancelled
  • Response Management: Accept/reject meeting requests with reason tracking
  • Student Performance Tracking: Monitor and record student academic performance
  • Responsive Design: Bootstrap-powered responsive UI for all devices

User Roles

  • Parents: View scheduled meetings, track student performance, manage profile
  • Teachers: Schedule meetings, manage meeting requests, update student performance, subject management
  • System: Automated meeting logging and status management

Advanced Features

  • Meeting acceptance/rejection system with reason tracking
  • Student performance monitoring with USN-based tracking
  • Comprehensive logging system for meeting deletions
  • Secure password hashing and session management
  • Clean, modern UI with gradient backgrounds and animations

๐Ÿ› ๏ธ Technology Stack

  • Backend: PHP 7.4+
  • Database: MySQL 5.7+
  • Frontend: HTML5, CSS3, Bootstrap 5.1.3
  • Server: Apache (XAMPP recommended)
  • Security: PHP password hashing, prepared statements, session management

๐Ÿ“‹ Requirements

System Requirements

  • PHP 7.4 or higher
  • MySQL 5.7 or higher
  • Apache Web Server
  • Modern web browser (Chrome, Firefox, Safari, Edge)

Recommended Setup

  • XAMPP 8.0+ (includes PHP, MySQL, Apache)
  • 2GB RAM minimum
  • 500MB free disk space

๐Ÿ”ง Installation

Step 1: Environment Setup

  1. Download and install XAMPP
  2. Start Apache and MySQL services from XAMPP Control Panel

Step 2: Project Setup

  1. Clone or download this repository
git clone [repository-url]
  1. Copy the project folder to your XAMPP htdocs directory:
C:\xampp\htdocs\parent-teacher-meeting-management\

Step 3: Database Configuration

  1. Open phpMyAdmin (http://localhost/phpmyadmin)
  2. Create a new database named ptm_system
  3. Import the database.sql file or let the system auto-create tables
  4. Verify database connection in config/db.php

Step 4: Configuration

  1. Update database credentials in config/db.php if needed:
$servername = "localhost";
$username = "root";
$password = "";
$database = "ptm_system";
  1. Ensure proper file permissions for the logs/ directory

Step 5: Access Application

  1. Open your web browser
  2. Navigate to: http://localhost/parent-teacher-meeting-management
  3. Register as a parent or teacher to get started

๐Ÿ“ Project Structure

parent-teacher-meeting-management/
โ”œโ”€โ”€ ๐Ÿ“„ index.php                    # Main landing page
โ”œโ”€โ”€ ๐Ÿ“„ teacher_meeting_form.php     # Teacher meeting scheduling form
โ”œโ”€โ”€ ๐Ÿ“„ database.sql                 # Database schema and initial data
โ”œโ”€โ”€ ๐Ÿ“„ README.md                    # Project documentation
โ”œโ”€โ”€ ๐Ÿ“„ .htaccess                    # Apache configuration
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ config/
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ db.php                   # Database connection and table creation
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ pages/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ dashboard.php            # Main user dashboard
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ login.php                # User login page
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ register.php             # User registration page
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ logout.php               # Logout functionality
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ meetings.php             # Meeting management page
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ edit_meeting.php         # Meeting editing interface
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ teacher_dashboard.php    # Teacher-specific dashboard
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ parent_dashboard.php     # Parent-specific dashboard
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ student-performance.php  # Student performance tracking
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ actions/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ save_meeting.php         # Meeting creation handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ update_meeting.php       # Meeting update handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ delete_meeting.php       # Meeting deletion handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ accept_meeting.php       # Meeting acceptance handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ reject_meeting.php       # Meeting rejection handler
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ update_status.php        # Meeting status update handler
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ assets/
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ background.jpg           # Background image
โ”‚   โ””โ”€โ”€ ๐Ÿ“ css/
โ”‚       โ””โ”€โ”€ ๐Ÿ“„ style.css            # Custom styling
โ”‚
โ””โ”€โ”€ ๐Ÿ“ logs/
    โ””โ”€โ”€ ๐Ÿ“„ meeting_deletion.log     # Meeting deletion audit log

๐Ÿ—„๏ธ Database Schema

Tables Overview

parent_users

  • User information for parents
  • Fields: id, name, email, password, phone, created_at

teacher_users

  • User information for teachers
  • Fields: id, name, email, password, phone, subject, created_at

meetings

  • Meeting scheduling and tracking
  • Fields: id, parent_name, student_name, subject, teacher_name, meeting_date, meeting_time, status, response_status, rejection_reason, created_at

student_performance

  • Academic performance tracking
  • Fields: id, usn, student_name, parent_name, marks, subject, created_at, updated_at

notifications

  • System notifications (future enhancement)
  • Fields: id, user_id, message, is_read, created_at

๐ŸŽฏ Usage Guide

For Parents

  1. Registration: Register with parent role using your email and personal details
  2. Login: Access your dashboard using registered credentials
  3. View Meetings: Check scheduled meetings with teachers
  4. Track Performance: Monitor your child's academic performance
  5. Profile Management: Update your contact information

For Teachers

  1. Registration: Register with teacher role, including subject specialization
  2. Schedule Meetings: Create new meeting requests for parents
  3. Manage Requests: Accept or reject meeting requests with reasons
  4. Update Status: Mark meetings as completed or cancelled
  5. Performance Entry: Record and update student performance data
  6. Meeting Overview: View all scheduled meetings in organized dashboard

Meeting Workflow

  1. Teacher schedules a meeting with parent details
  2. System creates meeting record with "pending" status
  3. Parent can view the meeting in their dashboard
  4. Teacher can accept/reject and update meeting status
  5. System logs all meeting activities for audit purposes

๐Ÿ” Security Features

  • Password Security: Bcrypt hashing for all user passwords
  • SQL Injection Protection: Prepared statements for all database queries
  • Session Management: Secure session handling with role-based access
  • Input Validation: Server-side validation for all user inputs
  • XSS Protection: HTML escaping for all output data

๐Ÿš€ Getting Started

Quick Start for Development

  1. Install XAMPP and start Apache + MySQL
  2. Clone project to htdocs/parent-teacher-meeting-management
  3. Access http://localhost/parent-teacher-meeting-management
  4. Register test accounts (one parent, one teacher)
  5. Test meeting scheduling workflow

Sample Data

The system will auto-create necessary database tables. You can:

  1. Register sample users through the web interface
  2. Create test meetings to explore functionality
  3. Use the teacher dashboard to manage meeting requests

๐Ÿ”ง Configuration

Database Configuration

Edit config/db.php to match your environment:

$servername = "localhost";    // Database server
$username = "root";           // Database username
$password = "";               // Database password
$database = "ptm_system";     // Database name

Apache Configuration

The .htaccess file handles URL rewriting and security headers. Ensure mod_rewrite is enabled in Apache.

๐Ÿ“ API Endpoints (Actions)

Action File Purpose
Save Meeting actions/save_meeting.php Create new meeting
Update Meeting actions/update_meeting.php Modify existing meeting
Delete Meeting actions/delete_meeting.php Remove meeting (with logging)
Accept Meeting actions/accept_meeting.php Accept meeting request
Reject Meeting actions/reject_meeting.php Reject with reason
Update Status actions/update_status.php Change meeting status

๐Ÿ› Troubleshooting

Common Issues

Database Connection Error

  • Verify MySQL is running in XAMPP
  • Check database credentials in config/db.php
  • Ensure ptm_system database exists

Page Not Found (404)

  • Verify project is in correct htdocs directory
  • Check Apache is running
  • Ensure proper file permissions

Login Issues

  • Clear browser cache and cookies
  • Verify user exists in correct table (parent_users/teacher_users)
  • Check password hashing compatibility

Meeting Not Saving

  • Check database table structure matches schema
  • Verify all required fields are provided
  • Check PHP error logs for detailed errors

๐Ÿ”ฎ Future Enhancements

  • Email Notifications: Automated email alerts for meeting updates
  • Calendar Integration: Export meetings to Google Calendar/Outlook
  • Mobile App: Native mobile application for iOS/Android
  • Real-time Chat: In-app messaging between parents and teachers
  • Document Sharing: Upload and share student documents
  • Multi-language Support: Internationalization for different languages
  • Advanced Reporting: Analytics and reporting dashboard
  • Video Conferencing: Integrated video meeting capabilities

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/new-feature)
  3. Commit your changes (git commit -am 'Add new feature')
  4. Push to the branch (git push origin feature/new-feature)
  5. Create a Pull Request

๐Ÿ“„ License

This project is open source and available under the MIT License.

๐Ÿ‘ฅ Support

For support and questions:

  • Create an issue in the repository
  • Check the troubleshooting section above
  • Review the code documentation in individual files

๐Ÿ† Acknowledgments

  • Bootstrap team for the responsive framework
  • PHP community for excellent documentation
  • XAMPP team for the development environment

Version: 1.0.0
Last Updated: January 2025
Compatibility: PHP 7.4+, MySQL 5.7+, Bootstrap 5.1.3

About

๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆThe Parent Teachers Meeting Management System is a web-based application designed to streamline and digitize the process of organizing, managing, and conducting parentโ€“teacher meetings in educational institutions. The system improves communication between parents, teachers, and school administration providing a centralized and efficient

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors