Campus-Connect

πŸŽ“ CampusConnect

A dynamic, server-side University Event Management Platform built with PHP & MySQL.

![PHP](https://img.shields.io/badge/PHP-777BB4?style=for-the-badge&logo=php&logoColor=white) ![MySQL](https://img.shields.io/badge/MySQL-00000F?style=for-the-badge&logo=mysql&logoColor=white) ![HTML5](https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white) ![CSS3](https://img.shields.io/badge/CSS3-1572B6?style=for-the-badge&logo=css3&logoColor=white)


πŸ“– About The Project

CampusConnect is a comprehensive web application designed to bridge the gap between students discovering campus activities and administrators managing event registrations.

Originally built as a static frontend project, it has been successfully migrated to a fully dynamic Server-Side architecture using PHP and MySQL. This migration enables real-time data handling, server-side pagination, dynamic filtering, and a fully functional Admin Dashboard.

✨ Key Features


πŸ“Έ Project Showcase

Here is a glimpse of the platform’s user interface and admin capabilities:

Home Page
CampusConnect Landing Page

Admin Dashboard
Admin Dashboard - Real-time Statistics

Event Management
Admin Console - Event Management with Dynamic Pagination

User Management
Admin Console - User Role Management

πŸš€ Getting Started (Installation Guide)

Follow these instructions to set up the project locally on your machine. This guide assumes you are using a local server environment like XAMPP, WAMP, or MAMP.

Prerequisites

1. Clone the Repository

Clone the project into your local server’s root directory (e.g., C:\xampp\htdocs\ for XAMPP):

git clonehttps://github.com/JoudN2001/Campus-Connect.git

2. Database Configuration

Before running the application, you need to configure the database credentials.

  1. Open your XAMPP Control Panel and start Apache and MySQL.

  2. Open your browser and navigate to:

http://localhost/phpmyadmin/
  1. Create a new empty database named:
campus_connect
  1. In your code editor, open the file:
config/db.php
  1. Ensure the credentials match your local MySQL setup (default XAMPP configuration uses root with no password):
$db_server = "localhost";
$db_user = "root";       // Change if your DB username is different
$db_pass = "";           // Change if your DB has a password
$db_name = "campus_connect";

3. Load Dummy Data (Automated Setup)

You do not need to import SQL files manually. The project includes an automated setup script that creates the required tables and populates them with realistic dummy data.

  1. Open your web browser.

  2. Navigate to the setup file:

http://localhost/Campus-Connect/database/setup.php
  1. You should see a success message similar to:
System Setup Started...
Tables created successfully...
Setup Complete!

Note: You only need to run this file once.


4. Run the Application

Once the database has been configured and populated, you can access the platform:

Public Interface

http://localhost/Campus-Connect/src/pages/home-page.php

Admin Dashboard

http://localhost/Campus-Connect/src/pages/admin/dashboard.php

πŸ“ Repository Structure

Campus-Connect/
β”œβ”€β”€ config/             # Database connection credentials (db.php)
β”œβ”€β”€ database/           # Database schema creation and dummy data seeder (setup.php)
β”œβ”€β”€ images/             # UI screenshots for documentation
β”œβ”€β”€ includes/           # PHP models (DB queries) and helper functions
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ pages/          # Public PHP views (Home, Events, Contact, Registration)
β”‚   β”‚   └── admin/      # Admin PHP views (Dashboard, Users, Manage Events)
β”‚   └── stylesheet/     # CSS styling and global variables
└── README.md

πŸ‘₯ Meet the Team

This project was built collaboratively by our dedicated team:


πŸ™ Acknowledgments

A special thank you to Dr. Somia Abufakher for her continuous guidance, valuable feedback, and support throughout the semester, helping make this project a reality.