🌟 Overview
of Astrology Management System
📌 Introduction
The
Astrology Management System is a web-based platform designed to
connect users with astrologers for horoscope readings, consultations, and
astrology-based services. This system streamlines the process of booking
appointments, viewing horoscopes, chatting with astrologers, and making
payments. It serves as a one-stop solution for astrology enthusiasts
seeking personalized guidance and predictions.
🎯 Objective
The
primary goal of this project is to digitize astrology services by
providing a user-friendly platform where users can:
- Consult
with astrologers for personalized readings
- Book
appointments for live or scheduled astrology
sessions
- View
daily, weekly, and monthly horoscopes
- Engage
in live chat with astrologers
- Make
online payments for astrology services
- Read
astrology-related blogs and articles
- Provide
feedback and reviews about astrologers and services
🔥 Key
Features
🏆 1.
Admin Panel
The
admin has full control over the system and can:
- Manage
users and astrologers
- Approve
or reject astrologer registrations
- View
and manage appointments
- Moderate
reviews and feedback
- Oversee
payments and transactions
- Generate
reports and analytics
🔮 2.
Astrologer Panel
Registered
astrologers can:
- Manage
profile and availability
- Accept
or reject user appointments
- Upload
personalized horoscope reports
- Chat
with users in real time
- View
user queries and respond accordingly
👤 3.
User Panel
Users
can:
- Register/Login
securely
- Update
profile information
- Book
appointments with astrologers
- View
horoscope predictions (daily, weekly, and monthly)
- Chat
with astrologers for personal consultations
- Make
secure payments via integrated payment gateways
- Provide
feedback & reviews for astrologers
📅 4.
Appointment Booking System
- Users
can choose an astrologer based on expertise and availability
- Appointment
status: Pending, Confirmed, Completed, Cancelled
- Email/SMS
notifications for booking confirmations
💬 5.
Live Chat System
- Real-time
messaging between astrologers and users
- Secure
and private conversations
- Allows
file sharing (horoscope reports)
📜 6.
Horoscope Module
- Users
can view daily, weekly, and monthly horoscopes
- Horoscopes
are based on Zodiac signs (Aries, Taurus, Gemini, etc.)
- Auto-updated
astrology reports based on predefined rules
💰 7.
Payment Integration
- Supports
multiple payment gateways (PayPal, Stripe, Razorpay, etc.)
- Secure
online transactions
- Payment
receipts for users and astrologers
📖 8.
Blog & Articles
- Admin
and astrologers can post astrology-related blogs
- Users
can read and comment on blog posts
- SEO-optimized
content for astrology enthusiasts
⭐ 9. Review &
Feedback System
- Users
can rate astrologers after consultation
- Reviews
help new users select astrologers
- Admin
can moderate inappropriate content
🔐 10.
Security Features
- Password
hashing for user authentication
- SQL
injection prevention using prepared statements
- Role-based
access control (Admin, Astrologer, User)
- .htaccess
restrictions for security
🏗 Technology
Stack
The
Astrology Management System is built using modern web technologies:
Technology |
Usage |
Frontend |
HTML,
CSS, Bootstrap, JavaScript |
Backend |
PHP
(Core PHP, MySQL) |
Database |
MySQL
(phpMyAdmin) |
Authentication |
PHP
Sessions & Cookies |
Payment
Integration |
PayPal,
Stripe API |
Real-time
Chat |
AJAX
& WebSockets (optional) |
Hosting |
Apache
Server (XAMPP/WAMP) |
Database tables
the
database tables used in the Astrology Management System project:
📌 1.
Users Table (users)
Stores
information about users (customers and astrologers).
CREATE
TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(150) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
phone VARCHAR(20),
role ENUM('user', 'astrologer', 'admin') NOT
NULL,
profile_pic VARCHAR(255) DEFAULT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP
);
📌 2.
Astrologers Table (astrologers)
Stores
additional details about astrologers.
CREATE TABLE astrologers (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
experience INT NOT NULL,
expertise VARCHAR(255) NOT NULL,
bio TEXT,
availability VARCHAR(255),
status ENUM('pending', 'approved', 'rejected')
DEFAULT 'pending',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON
DELETE CASCADE
);
📌 3.
Horoscopes Table (horoscopes)
Stores
daily, weekly, and monthly horoscopes.
CREATE TABLE horoscopes (
id INT AUTO_INCREMENT PRIMARY KEY,
zodiac_sign VARCHAR(50) NOT NULL,
horoscope_type ENUM('daily', 'weekly', 'monthly')
NOT NULL,
prediction TEXT NOT NULL,
date DATE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
📌 4.
Appointments Table (appointments)
Stores
appointments between users and astrologers.
CREATE TABLE appointments (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
astrologer_id INT NOT NULL,
appointment_date DATETIME NOT NULL,
status ENUM('pending', 'confirmed', 'completed',
'cancelled') DEFAULT 'pending',
payment_status ENUM('pending', 'paid') DEFAULT
'pending',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON
DELETE CASCADE,
FOREIGN KEY (astrologer_id) REFERENCES
astrologers(id) ON DELETE CASCADE
);
📌 5.
Chats Table (chats)
Stores
chat messages between users and astrologers.
CREATE TABLE chats (
id INT AUTO_INCREMENT PRIMARY KEY,
sender_id INT NOT NULL,
receiver_id INT NOT NULL,
message TEXT NOT NULL,
sent_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (sender_id) REFERENCES users(id)
ON DELETE CASCADE,
FOREIGN KEY (receiver_id) REFERENCES
users(id) ON DELETE CASCADE
);
📌 6.
Payments Table (payments)
Stores
payment transactions for astrology services.
CREATE TABLE payments (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
astrologer_id INT NOT NULL,
appointment_id INT NOT NULL,
amount DECIMAL(10,2) NOT NULL,
payment_status ENUM('pending', 'successful',
'failed') DEFAULT 'pending',
transaction_id VARCHAR(100) NOT NULL,
payment_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON
DELETE CASCADE,
FOREIGN KEY (astrologer_id) REFERENCES
astrologers(id) ON DELETE CASCADE,
FOREIGN KEY (appointment_id) REFERENCES
appointments(id) ON DELETE CASCADE
);
📌 7.
Reviews Table (reviews)
Stores
ratings and feedback from users for astrologers.
CREATE TABLE reviews (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
astrologer_id INT NOT NULL,
rating INT CHECK (rating BETWEEN 1 AND 5),
review TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON
DELETE CASCADE,
FOREIGN KEY (astrologer_id) REFERENCES
astrologers(id) ON DELETE CASCADE
);
📌 8.
Blogs Table (blogs)
Stores
articles and astrology blogs posted by astrologers or admins.
CREATE TABLE blogs (
id INT AUTO_INCREMENT PRIMARY KEY,
author_id INT NOT NULL,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (author_id) REFERENCES
users(id) ON DELETE CASCADE
);
📌 9.
Notifications Table (notifications)
Stores
alerts and notifications for users and astrologers.
CREATE TABLE notifications (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
message TEXT NOT NULL,
status ENUM('unread', 'read') DEFAULT 'unread',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON
DELETE CASCADE
);
📌 10.
Admin Table (admin)
Stores
admin credentials for managing the system.
CREATE TABLE admin (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(100) UNIQUE NOT NULL,
email VARCHAR(150) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
📌 Relationships
Between Tables
- Users
(Customers & Astrologers) → Linked to Appointments, Chats, Reviews,
Payments
- Astrologers
→ Linked to Appointments, Reviews, Blogs
- Appointments
→ Linked to Payments, Chats
- Horoscopes
→ Independent but retrieved by users
- Admin
→ Manages the entire system
🚀 Conclusion
These
database tables create a robust structure for the Astrology Management System,
ensuring smooth user interaction, secure payments, appointment scheduling,
horoscope predictions, and real-time chats.
🔮 Modules of the Astrology Management System
The
Astrology Management System consists of several modules to handle different
functionalities like user registration, astrologer services, horoscope
predictions, payment processing, chat, reviews, and more. Below is a detailed
breakdown of all the modules and their functionalities.
📌 1.
User Management Module
Functionality:
This
module handles the registration, login, and profile management for users and
astrologers.
Features:
✅ User Registration
– Allows users (customers & astrologers) to sign up.
✅ Login &
Logout – Authenticates users and provides access to their dashboard.
✅ User Profiles –
Users can update their name, phone, email, and profile picture.
✅ Astrologer
Profile Management – Astrologers can update their bio, experience, and
expertise.
✅ Role-Based Access
– Admin, astrologers, and users have different access levels.
Files:
- register.php
→ User and astrologer registration
- login.php
→ Login form
- astrologer_register.php
→ Registration form for astrologers
- includes/functions.php
→ Handles user authentication
📌 2.
Horoscope Module
Functionality:
Users
can view daily, weekly, and monthly horoscopes.
Features:
✅ View Horoscope –
Get predictions based on zodiac signs.
✅ Filter by Date –
View past horoscopes.
✅ Admin Management
– Admin can add/edit horoscopes.
Files:
- horoscope/daily_horoscope.php
- horoscope/weekly_horoscope.php
- horoscope/monthly_horoscope.php
- api/get_horoscope.php
→ API for fetching horoscope
📌 3.
Appointment Booking Module
Functionality:
Users
can book appointments with astrologers for consultations.
Features:
✅ Book an
Appointment – Users select an astrologer and choose a date/time.
✅ Manage
Appointments – Users and astrologers can view scheduled sessions.
✅ Cancel Booking –
Users can cancel appointments before confirmation.
✅ Booking History –
Users can track their previous bookings.
Files:
- booking/new_booking.php
→ Form to book an appointment
- booking/booking_history.php
→ Displays past appointments
- booking/cancel_booking.php
→ Allows users to cancel a booking
📌 4.
Chat Module
Functionality:
Users
can chat with astrologers before or after booking.
Features:
✅ Real-Time
Messaging – Users and astrologers can exchange messages.
✅ Chat History –
Conversations are stored for future reference.
✅ Notifications –
Users get notified about new messages.
Files:
- chat/chat_system.php
→ Main chat interface
- chat/messages.php
→ Handles sending/receiving messages
- api/chat_api.php
→ API for chat messages
📌 5.
Payment Module
Functionality:
Handles
secure payments for booking consultations.
Features:
✅ Payment Gateway
Integration – Supports multiple payment methods.
✅ Transaction
Tracking – Keeps records of all payments.
✅ Success &
Failure Pages – Displays payment status messages.
Files:
- payments/payment_gateway.php
→ Processes payments
- payments/success.php
→ Displays success message
- payments/failure.php
→ Displays failure message
- api/payment_api.php
→ Handles payment verification
📌 6.
Review & Feedback Module
Functionality:
Users
can submit reviews and ratings for astrologers.
Features:
✅ Submit Feedback –
Users rate astrologers from 1-5 stars and leave comments.
✅ View Reviews –
Users can read reviews before booking.
✅ Admin Moderation
– Admin can remove inappropriate reviews.
Files:
- feedback/submit_feedback.php
→ Users submit reviews
- feedback/view_reviews.php
→ Displays all reviews
📌 7.
Blog Module
Functionality:
Astrologers
and admins can write and share articles.
Features:
✅ Add Blog Posts –
Astrologers share astrology-related articles.
✅ View Blog Posts –
Users can read and comment on blogs.
✅ Blog Details Page
– Shows full blog content.
Files:
- blog/add_blog.php
→ Form to create a blog
- blog/view_blog.php
→ Displays list of blogs
- blog/blog_details.php
→ Shows full blog
📌 8.
Admin Module
Functionality:
Admin
manages the system, users, astrologers, and horoscopes.
Features:
✅ Dashboard – View
system stats and user activity.
✅ Manage Users
& Astrologers – Approve, block, or remove users.
✅ Manage Horoscopes
– Add/edit predictions.
✅ Manage Payments –
Verify transactions and resolve disputes.
Files:
- admin/dashboard.php
→ Admin dashboard
- admin/manage_users.php
→ User management
- admin/manage_astrologers.php
→ Astrologer approvals
- admin/manage_horoscopes.php
→ Horoscope management
📌 9.
Notification Module
Functionality:
Sends
updates to users and astrologers.
Features:
✅ New Booking
Alerts – Astrologers get notified of new bookings.
✅ Chat Alerts –
Users are notified of new messages.
✅ Payment Updates –
Users receive payment confirmation.
Files:
- includes/functions.php
→ Sends notifications
📌 10.
Content Management Module
Functionality:
Manages
static pages like About Us, Contact, Terms, and FAQs.
Features:
✅ About Us Page –
Displays company details.
✅ Contact Page –
Users can send inquiries.
✅ FAQ Page –
Answers common questions.
Files:
- about.php
- contact.php
- terms.php
- faq.php
📌 11.
Security & Authentication Module
Functionality:
Ensures
data security and user authentication.
Features:
✅ Password Hashing
– Uses bcrypt for secure passwords.
✅ Session
Management – Prevents unauthorized access.
✅ SQL Injection
Protection – Uses prepared statements.
✅ CSRF Protection –
Prevents cross-site request forgery.
Files:
- includes/functions.php
→ Secure authentication functions
- .htaccess
→ Prevents unauthorized access to sensitive files
📌 12.
API Module
Functionality:
Provides
API endpoints for mobile apps or third-party services.
Features:
✅ Horoscope API –
Fetches horoscope predictions.
✅ Chat API –
Handles real-time messaging.
✅ Payment API –
Processes transactions securely.
Files:
- api/get_horoscope.php
- api/chat_api.php
- api/payment_api.php
🚀 Conclusion
This
project is divided into 12 core modules, covering user management, horoscope
services, bookings, chat, payments, blogs, reviews, and admin controls.
📂 Project
File Structure
Astrology-Management-System/
│──
api/
│ ├── chat_api.php
│ ├── get_horoscope.php
│ ├── payment_api.php
│
│──
admin/
│ ├── dashboard.php
│ ├── manage_users.php
│ ├── manage_astrologers.php
│ ├── manage_bookings.php
│ ├── manage_payments.php
│ ├── reports.php
│
│──
astrologer/
│ ├── dashboard.php
│ ├── profile.php
│ ├── schedule.php
│ ├── appointments.php
│ ├── upload_reports.php
│ ├── chat.php
│
│──
user/
│ ├── dashboard.php
│ ├── profile.php
│ ├── book_appointment.php
│ ├── view_horoscope.php
│ ├── chat_with_astrologer.php
│ ├── payment.php
│
│──
booking/
│ ├── new_booking.php
│ ├── booking_history.php
│ ├── cancel_booking.php
│
│──
horoscope/
│ ├── daily_horoscope.php
│ ├── weekly_horoscope.php
│ ├── monthly_horoscope.php
│
│──
payments/
│ ├── payment_gateway.php
│ ├── success.php
│ ├── failure.php
│
│──
chat/
│ ├── chat_system.php
│ ├── messages.php
│
│──
feedback/
│ ├── submit_feedback.php
│ ├── view_reviews.php
│
│──
blog/
│ ├── add_blog.php
│ ├── view_blog.php
│ ├── blog_details.php
│
│──
includes/
│ ├── header.php
│ ├── footer.php
│ ├── sidebar.php
│ ├── functions.php
│
│──
database.php
│──
config.php
│──
index.php
│──
login.php
│──
register.php
│──
astrologer_register.php
│──
about.php
│──
.htaccess
│── README.md