Skip to content

sakshinikam05/Drivons

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

14 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

D R I V O N S

๐Ÿš— Premium Car Rental & Intelligent Fleet Management System ๐Ÿš—

โœจ Seamless Rentals ย  | ย  ๐Ÿ›ก๏ธ Verified Drivers ย  | ย  โšก Intelligent Fleet


Keywords Typing


๐Ÿ“‹ Table of Contents

# Section
1 โœจ Overview
2 ๐ŸŽฏ Key Highlights
3 ๐Ÿท๏ธ Core Features
4 ๐Ÿ‘ฅ User Roles
5 ๐Ÿง  Technology Stack
6 ๐Ÿ—๏ธ System Architecture
7 ๐Ÿ”„ Application Workflow
8 ๐Ÿ—„๏ธ Database Design
9 ๐Ÿ“‚ Project Structure
10 ๐Ÿ—บ๏ธ Cities & Inventory
11 ๐Ÿค– AI Chatbot
12 ๐Ÿ’ณ Payment Integration
13 ๐Ÿš€ Installation & Setup
14 ๐Ÿ”ง Configuration
15 ๐Ÿ” Security
16 ๐Ÿ“ˆ Future Scope
17 ๐Ÿ“ธ Screenshots

โœจ Overview

DRIVONS is a production-style, full-stack car rental and booking platform built with Core PHP, MySQL, and Bootstrap. It bridges the gap between users, local car dealers, and administrators โ€” modernizing vehicle rental across 8 cities in Maharashtra.

The platform handles the complete rental lifecycle: browsing โ†’ booking โ†’ driving license upload โ†’ Razorpay payment โ†’ invoice generation โ€” all within a seamless web experience, enriched with an AI chatbot and OTP-based email verification.

๐ŸŽ“ Final-year academic project ยท ๐Ÿ’ผ Production-grade portfolio showcase


๐ŸŽฏ Key Highlights

๐Ÿ—บ๏ธ 8 Cities Served Jalgaon ยท Pune ยท Mumbai ยท Nashik ยท Nagpur ยท Navi Mumbai ยท Thane ยท Sambhaji Nagar
๐Ÿš— 55+ Cars Budget โ‚น1,800/day โ†’ Premium โ‚น4,000/day
๐Ÿชช License Upload Front & back image for self-drive verification
๐Ÿ’ณ Online Payment Razorpay gateway (Test + Live ready)
๐Ÿค– AI Chatbot TIDIO embedded real-time assistant
๐Ÿ“ง Email OTP Registration, login & password reset via PHPMailer
๐Ÿ“„ Auto Invoice Generated after every confirmed booking
๐Ÿท๏ธ Subscriptions Premium plans via Razorpay billing
๐Ÿ“ Community Blog 19 author-contributed articles
๐Ÿ” Secure Auth Session-based with role-based access control

๐Ÿท๏ธ Core Features

๐Ÿ‘ค User Features

  • โœ… Secure registration with email OTP verification
  • โœ… Login / logout with PHP session management
  • โœ… Browse cars filtered by city and model
  • โœ… View individual car detail pages with full specs & pricing
  • โœ… Dual booking modes โ€” self-drive (with license) or with a hired driver
  • โœ… Upload driving license (front + back) during booking
  • โœ… Pay seamlessly via Razorpay (UPI / Card / Netbanking)
  • โœ… View booking history and downloadable invoices
  • โœ… Subscribe to premium plans
  • โœ… Edit and manage user profile
  • โœ… Access AI chatbot for instant guidance
  • โœ… Read the community blog
  • โœ… Browse dealer profiles across cities
  • โœ… Submit testimonials and contact messages

๐Ÿ›‚ Admin Features

(Accessible via Backend/wd.php)

  • โœ… Centralized admin dashboard
  • โœ… Manage all registered users
  • โœ… View and control all bookings (tblform)
  • โœ… Monitor payments and transactions (tblpayments)
  • โœ… Manage vehicle inventory (tblcars)
  • โœ… Handle subscription records (tblsubscriptions)
  • โœ… Moderate user testimonials
  • โœ… View contact/reply messages
  • โœ… Track newsletter subscribers
  • โœ… Session and access reset controls

๐Ÿš˜ Dealer Features

  • โœ… 8 registered dealer profiles (d0โ€“d7)
  • โœ… City-specific car inventory pages
  • โœ… Individual dealer detail pages
  • โœ… Direct customer contact options

๐Ÿ‘ฅ User Roles

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                         D R I V O N S                        โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚      USER       โ”‚      DEALER       โ”‚        ADMIN           โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  Register/Login โ”‚  Profile listing  โ”‚  Full dashboard        โ”‚
โ”‚  Browse cars    โ”‚  City inventory   โ”‚  Booking management    โ”‚
โ”‚  Book & Pay     โ”‚  Availability     โ”‚  User management       โ”‚
โ”‚  View invoices  โ”‚  Contact info     โ”‚  Payment tracking      โ”‚
โ”‚  Subscribe      โ”‚                   โ”‚  License verification  โ”‚
โ”‚  Manage profile โ”‚                   โ”‚  Subscription control  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿง  Technology Stack

๐ŸŽจ Frontend

Technology Purpose
HTML5 Semantic page structure
CSS3 + Custom CSS Styling, animations, responsive design
JavaScript (Vanilla) Client-side interactivity
Bootstrap Responsive grid layout & UI components
Custom Web Fonts Premium typography (27 bundled font files)

โš™๏ธ Backend

Technology Purpose
PHP 8.2 (Core PHP) Server-side logic, routing, session handling
Apache (XAMPP) Local web server
Composer PHP dependency management
PHPMailer OTP & notification emails via SMTP
Razorpay PHP SDK Payment order creation & signature verification

๐Ÿ—„๏ธ Database

Technology Purpose
MySQL / MariaDB 10.4 Relational database engine
phpMyAdmin Database GUI management

๐Ÿ”Œ Third-Party Integrations

Service Role
Razorpay Car rental payments & subscription billing
TIDIO AI-powered chatbot (JavaScript embed)
PHPMailer + Gmail SMTP Email delivery for OTPs & notifications

๐Ÿ—๏ธ System Architecture

  โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
  โ•‘     Browser (User / Admin)           โ•‘
  โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
                 โ”‚  HTTP
  โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ–ผโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
  โ•‘         Frontend Layer               โ•‘
  โ•‘   HTML ยท CSS ยท JS ยท Bootstrap        โ•‘
  โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
                 โ”‚  PHP Requests
  โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ–ผโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
  โ•‘         Backend Layer (Core PHP)     โ•‘
  โ•‘  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ•‘
  โ•‘  โ”‚  Auth Module                   โ”‚  โ•‘
  โ•‘  โ”‚  register / login / OTP        โ”‚  โ•‘
  โ•‘  โ”‚  logout / forgot / reset pass  โ”‚  โ•‘
  โ•‘  โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค  โ•‘
  โ•‘  โ”‚  Booking & Form Management     โ”‚  โ•‘
  โ•‘  โ”‚  save_selected_items / submit  โ”‚  โ•‘
  โ•‘  โ”‚  checkout / invoice            โ”‚  โ•‘
  โ•‘  โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค  โ•‘
  โ•‘  โ”‚  Payment Processing            โ”‚  โ•‘
  โ•‘  โ”‚  create_order / verify_payment โ”‚  โ•‘
  โ•‘  โ”‚  payment_success / failed      โ”‚  โ•‘
  โ•‘  โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค  โ•‘
  โ•‘  โ”‚  Email / OTP Service           โ”‚  โ•‘
  โ•‘  โ”‚  send_email / verify_otp       โ”‚  โ•‘
  โ•‘  โ”‚  resend_otp / verify_pass_otp  โ”‚  โ•‘
  โ•‘  โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค  โ•‘
  โ•‘  โ”‚  Admin Control Panel (wd.php)  โ”‚  โ•‘
  โ•‘  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ•‘
  โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
                 โ”‚  MySQLi
  โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ–ผโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
  โ•‘         Database Layer (MySQL)       โ•‘
  โ•‘  tblusers ยท tblcars ยท tblform        โ•‘
  โ•‘  tblpayments ยท tblsubscriptions      โ•‘
  โ•‘  tbltestimonial ยท tblreply           โ•‘
  โ•‘  tblsubscribers                      โ•‘
  โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐Ÿ”„ Application Workflow

 [1] Visit โ†’ index.php (Landing page)
      โ”‚
 [2] Register โ†’ OTP email sent (PHPMailer)
      โ”‚
 [3] Verify OTP โ†’ Account activated โ†’ Login
      โ”‚
 [4] Browse cars by city โ†’ Select car
      โ”‚
 [5] Car detail page โ†’ Click "Book Now"
      โ”‚
 [6] Fill booking form
      โ”œโ”€โ”€ Personal details (name, phone, address)
      โ”œโ”€โ”€ Source & destination cities
      โ”œโ”€โ”€ Departure & arrival date/time
      โ””โ”€โ”€ Upload driving license (front + back)
      โ”‚
 [7] Booking saved โ†’ tblform
      โ”‚
 [8] Proceed to Checkout โ†’ Razorpay popup opens
      โ”‚
 [9] Payment verified (HMAC) โ†’ tblpayments updated
      โ”‚
[10] Invoice auto-generated โ†’ View in "My Bookings"
      โ”‚
[11] Admin reviews and manages in wd.php dashboard

๐Ÿ—„๏ธ Database Design

Database name: drivons ยท Engine: InnoDB ยท Charset: utf8mb4

๐Ÿ“Š Tables at a Glance

Table Description Key Columns
tblusers Registered user accounts id, username, email, password, OTP, ContactNo, dob, Address, City
tblcars Vehicle inventory (55 cars) id, carname, dname (city), price (โ‚น/day)
tblform Booking records user_id, car_id, source, destination, departureDate, arrivalDate, licenseNumber, licenseFront/BackImage
tblpayments Payment transactions user_id, car_name, amount, payment_status, razorpay_payment_id, transaction_date
tblsubscriptions Premium subscriptions user_id, plan, amount, transaction_id, payment_status
tbltestimonial User testimonials email, Testimonial, PostingDate, status
tblreply Contact messages name, email, title, message, created_at
tblsubscribers Newsletter signups SubscriberEmail, PostingDate

๐Ÿงฉ Core SQL Schema

-- Users
CREATE TABLE `tblusers` (
  `id`           INT(11)      NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `username`     VARCHAR(255) NOT NULL,
  `email`        VARCHAR(255) NOT NULL,
  `password`     VARCHAR(255) NOT NULL,
  `OTP`          VARCHAR(6)   NOT NULL,
  `ContactNo`    CHAR(11)     DEFAULT NULL,
  `dob`          VARCHAR(100) DEFAULT NULL,
  `Address`      VARCHAR(255) DEFAULT NULL,
  `City`         VARCHAR(100) DEFAULT NULL,
  `created_at`   TIMESTAMP    DEFAULT CURRENT_TIMESTAMP
);

-- Vehicle Inventory
CREATE TABLE `tblcars` (
  `id`      INT(11)      NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `carname` VARCHAR(100) DEFAULT NULL,
  `dname`   VARCHAR(100) DEFAULT NULL,   -- dealer city
  `price`   FLOAT        DEFAULT NULL    -- INR per day
);

-- Bookings
CREATE TABLE `tblform` (
  `id`                INT(11)      NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `user_id`           INT(11)      DEFAULT NULL,
  `name`              VARCHAR(100) DEFAULT NULL,
  `email`             VARCHAR(100) DEFAULT NULL,
  `phone`             VARCHAR(100) DEFAULT NULL,
  `city`              VARCHAR(100) DEFAULT NULL,
  `hasLicense`        VARCHAR(100) DEFAULT NULL,
  `licenseNumber`     VARCHAR(100) DEFAULT NULL,
  `licenseFrontImage` VARCHAR(100) DEFAULT NULL,
  `licenseBackImage`  VARCHAR(100) DEFAULT NULL,
  `source`            VARCHAR(100) DEFAULT NULL,
  `destination`       VARCHAR(100) DEFAULT NULL,
  `departureDate`     DATE         DEFAULT NULL,
  `arrivalDate`       DATE         DEFAULT NULL,
  `car_id`            INT(11)      DEFAULT NULL,
  `carname`           VARCHAR(100) DEFAULT NULL,
  `price`             FLOAT        DEFAULT NULL
);

-- Payments
CREATE TABLE `tblpayments` (
  `id`                  INT(11)       NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `user_id`             INT(11)       DEFAULT NULL,
  `car_name`            VARCHAR(255)  NOT NULL,
  `amount`              DECIMAL(10,2) DEFAULT NULL,
  `payment_status`      VARCHAR(50)   DEFAULT NULL,
  `razorpay_payment_id` VARCHAR(100)  DEFAULT NULL,
  `transaction_date`    TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
);

๐Ÿ“‚ Project Structure

GIT DRIVONS/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“„ README.md
โ”œโ”€โ”€ ๐Ÿ“„ LICENSE
โ”œโ”€โ”€ ๐Ÿ“„ .gitignore
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Screenshots/
โ”‚   โ””โ”€โ”€ ๐Ÿ“„ banner.png                   โ† Project banner
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ Backend/                         โ† All server-side PHP logic
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ dbcon.php                    โ† MySQL connection
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ session.php                  โ† Session initialization
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ check_session.php            โ† Auth guard
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ reset_session.php            โ† Session reset
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ send_email.php               โ† PHPMailer dispatcher
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ verify_otp.php               โ† Registration OTP
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ verify_pass_otp.php          โ† Password reset OTP
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ resend_otp_pass.php          โ† Resend OTP
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ save_selected_items.php      โ† Booking selection save
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ create_order.php             โ† Razorpay order creation
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ verify_payment.php           โ† Razorpay HMAC verification
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ update_payment_status.php    โ† Payment status updater
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ payment_success.php          โ† Post-payment handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ payment_failed.php           โ† Failure handler
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ success.php                  โ† Subscription success
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ view_subscriptions.php       โ† Subscription viewer
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ wd.php                       โ† ๐Ÿ” Admin control panel
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ composer.json / composer.lock
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ php.ini                      โ† Upload config
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ auth/                        โ† Authentication module
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ login.php
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ register.php
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ logout.php
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ forgot_password.php
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ reset_password.php
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ sql/
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ drivons.sql              โ† Full DB dump (import this)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ uploads/                     โ† Uploaded license images
โ”‚   โ””โ”€โ”€ ๐Ÿ“ vendor/                      โ† Composer packages
โ”‚
โ””โ”€โ”€ ๐Ÿ“ Frontend/                        โ† All user-facing views
    โ”œโ”€โ”€ ๐Ÿ“„ index.php                    โ† ๐Ÿ  Home / Landing page
    โ”œโ”€โ”€ ๐Ÿ“„ about.php
    โ”œโ”€โ”€ ๐Ÿ“„ faq.php
    โ”œโ”€โ”€ ๐Ÿ“„ terms.php
    โ”œโ”€โ”€ ๐Ÿ“„ subscription.php
    โ”œโ”€โ”€ ๐Ÿ“„ checkout.php
    โ”œโ”€โ”€ ๐Ÿ“„ inventory.php
    โ”œโ”€โ”€ ๐Ÿ“„ accessories.php
    โ”œโ”€โ”€ ๐Ÿ“„ maintenance.php
    โ”œโ”€โ”€ ๐Ÿ“„ testimonial.php
    โ”œโ”€โ”€ ๐Ÿ“„ team.php
    โ”œโ”€โ”€ ๐Ÿ“„ my-booking.php
    โ”œโ”€โ”€ ๐Ÿ“„ profile.php
    โ”œโ”€โ”€ ๐Ÿ“„ invoice.php / invoice_main.php
    โ”œโ”€โ”€ ๐Ÿ“„ 404.php
    โ”œโ”€โ”€ ๐Ÿ“ Cars/                        โ† 59 individual car pages
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ cars.php
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ j-*.php                  โ† Jalgaon cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ m-*.php                  โ† Mumbai cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ n-*.php                  โ† Nagpur cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ na-*.php                 โ† Nashik cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ nm-*.php                 โ† Navi Mumbai cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ p-*.php                  โ† Pune cars
    โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ s-*.php                  โ† Sambhaji Nagar cars
    โ”‚   โ””โ”€โ”€ ๐Ÿ“„ t-*.php                  โ† Thane cars
    โ”œโ”€โ”€ ๐Ÿ“ Dealer/                      โ† 18 dealer pages (d0โ€“d7 + cities)
    โ”œโ”€โ”€ ๐Ÿ“ Blog/                        โ† 20 blog articles
    โ”œโ”€โ”€ ๐Ÿ“ Contact/
    โ”œโ”€โ”€ ๐Ÿ“ Game/
    โ”œโ”€โ”€ ๐Ÿ“ Header/ & ๐Ÿ“ footer/
    โ”œโ”€โ”€ ๐Ÿ“ css/     (14 stylesheets)
    โ”œโ”€โ”€ ๐Ÿ“ js/      (18 scripts)
    โ”œโ”€โ”€ ๐Ÿ“ fonts/   (27 font files)
    โ””โ”€โ”€ ๐Ÿ“ images/  (70 assets)

๐Ÿ—บ๏ธ Cities & Car Inventory

55 cars across 8 Maharashtra cities | Price range: โ‚น1,800/day โ€“ โ‚น4,000/day

City No. of Cars Highlights
๐Ÿ™๏ธ Jalgaon 7 Chevrolet Tavera ยท Mahindra Scorpio-N ยท Toyota GR86 ยท Honda Civic
๐Ÿ™๏ธ Pune 10 Mazda MX-5 Miata RF ยท Subaru BRZ ยท Honda Civic Si ยท Toyota Corolla
๐Ÿ™๏ธ Mumbai 7 Hyundai Creta EV ยท Tata Tiago ยท Maruti Dzire ยท Honda City
๐Ÿ™๏ธ Nashik 9 Maruti Swift ยท Tata Nexon EV ยท Hyundai Creta EV ยท Hyundai Elantra
๐Ÿ™๏ธ Nagpur 8 Mahindra Scorpio-N ยท Toyota Corolla ยท Tata Nexon EV ยท Maruti Ertiga
๐Ÿ™๏ธ Navi Mumbai 5 Subaru BRZ ยท Tata Nexon EV ยท Toyota Corolla ยท Honda City
๐Ÿ™๏ธ Sambhaji Nagar 4 Maruti Ciaz ยท Hyundai Aura ยท Chevrolet Tavera ยท Hyundai Elantra
๐Ÿ™๏ธ Thane 5 Hyundai Elantra ยท Chevrolet Tavera ยท Renault Kiger ยท Nissan Magnite

๐Ÿค– AI Chatbot Integration

Drivons embeds a TIDIO AI chatbot on every page, providing round-the-clock user assistance.

Chatbot Capabilities:

  • ๐Ÿ’ฌ Guides users through the booking process step by step
  • โ“ Instantly answers FAQs
  • ๐Ÿ“‹ Explains subscription plans and pricing
  • ๐Ÿ› ๏ธ Provides support without manual intervention

Integrated via JavaScript embed with the TIDIO API key placed before </body> on each page.


๐Ÿ’ณ Payment Integration

Drivons uses Razorpay for both car rental payments and subscription billing.

Payment Flow

User โ†’ "Proceed to Pay" button
  โ”‚
  โ–ผ
Backend: create_order.php
  โ†’ Razorpay Orders API called
  โ†’ order_id returned to frontend
  โ”‚
  โ–ผ
Frontend: Razorpay Checkout popup
  โ†’ User pays via UPI / Card / Netbanking
  โ”‚
  โ–ผ
Backend: verify_payment.php
  โ†’ HMAC SHA256 signature verified
  โ†’ tblpayments record created
  โ”‚
  โ–ผ
payment_success.php
  โ†’ Invoice generated, booking confirmed

โš ๏ธ Currently set to Razorpay Test Mode. Replace keys in create_order.php and verify_payment.php to go live.


๐Ÿš€ Installation & Setup

โœ… Prerequisites

  • XAMPP โ€” PHP 8.2+, Apache, MySQL
  • Composer โ€” PHP dependency manager
  • Git

Step 1 โ€” Clone the Repository

git clone https://github.com/sakshinikam05/Drivons.git

Move to your XAMPP htdocs directory:

macOS:   /Applications/XAMPP/xamppfiles/htdocs/Drivons
Windows: C:\xampp\htdocs\Drivons

Step 2 โ€” Set Up the Database

  1. Start XAMPP โ†’ start Apache and MySQL
  2. Open phpMyAdmin: http://localhost/phpmyadmin
  3. Create a new database:
    drivons
    
  4. Select drivons โ†’ click Import โ†’ upload:
    Backend/sql/drivons.sql
    
  5. Click Go โ€” all 8 tables with 55 cars will be imported โœ…

Step 3 โ€” Install PHP Dependencies

cd Backend
composer install

Installs PHPMailer and the Razorpay PHP SDK.


Step 4 โ€” Configure the App

Open Backend/dbcon.php and verify:

$con = mysqli_connect('localhost', 'root', '', 'drivons');

Update if your MySQL uses a password.


Step 5 โ€” Launch

http://localhost/Drivons/Frontend/index.php    โ† Main site
http://localhost/Drivons/Backend/wd.php        โ† Admin panel

๐Ÿ”ง Configuration

๐Ÿ“ง Email / OTP (PHPMailer)

Edit Backend/send_email.php:

$mail->isSMTP();
$mail->Host       = 'smtp.gmail.com';
$mail->SMTPAuth   = true;
$mail->Username   = 'your@email.com';     // Your Gmail address
$mail->Password   = 'your_app_password';  // Gmail App Password
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port       = 587;

๐Ÿ’ก Generate a Gmail App Password: Google Account โ†’ Security โ†’ 2-Step Verification โ†’ App passwords

๐Ÿ’ณ Razorpay Keys

In Backend/create_order.php and Backend/verify_payment.php:

$keyId     = "rzp_test_XXXXXXXXXXXX";     // Your Razorpay Key ID
$keySecret = "XXXXXXXXXXXXXXXXXXXXXXXX";  // Your Razorpay Key Secret

Get keys from dashboard.razorpay.com.

๐Ÿ“ File Upload Limits

Backend/php.ini:

upload_max_filesize = 10M
post_max_size       = 10M

๐Ÿ” Security Considerations

Concern Implementation
๐Ÿ”‘ Password storage password_hash() + password_verify()
๐Ÿ”’ Session security session_start() guarded on all protected routes
๐Ÿ’‰ SQL Injection MySQLi parameterized queries throughout
๐Ÿ“ง OTP verification Server-side OTP stored in DB, single-use
๐Ÿ“ File upload safety Type/size validation; uploads stored outside web root
๐Ÿ’ณ Payment security Razorpay HMAC SHA256 signature verification
๐ŸŽญ Role separation Admin in Backend/, users in Frontend/
๐Ÿงน Input sanitization htmlspecialchars() + server-side validation

๐Ÿ“ˆ Scalability & Future Scope

  • ๐ŸŒ REST API layer to decouple frontend and backend
  • ๐Ÿ“ฑ Mobile application (Android / iOS)
  • ๐Ÿ›ฐ๏ธ Live vehicle GPS tracking
  • โ˜๏ธ Cloud deployment (AWS / Railway / Render)
  • ๐Ÿ“Š Advanced admin analytics dashboard
  • ๐Ÿ”” Real-time booking notifications (WebSockets / Firebase)
  • ๐Ÿค– Enhanced AI chatbot with booking intent recognition
  • ๐Ÿ‡ฎ๐Ÿ‡ณ Multilingual support (Hindi, Marathi)
  • โญ Ratings & reviews for cars and dealers
  • ๐Ÿง‘โ€โœˆ๏ธ Driver management and assignment system

๐Ÿ“ธ Screenshots

Refer to the following folder and document for full project screenshots and visual documentation:

๐Ÿ“ Screenshot/Drivons_SS

High-Resolution PDF: ๐Ÿ”— View on Google Drive

๐Ÿ“„ Comprehensive Visual Guide

The documentation contains screenshots of all pages of the DRIVONS platform, including the user frontend, dealer inventory, AI-Bot Integration.


โค๏ธ Contributor


Sakshi Nikam
Sakshi Nikam

Developer ยท Designer

Built with focus on clean architecture, relational database design, real-world payment integration, and complete system workflows โ€” demonstrating production grade thinking in an academic context.


๐Ÿš˜ A Note from the Road

"Every great journey starts with a single key turn. DRIVONS was built with the belief that technology should make mobility accessible, transparent, and joyful especially for the cities that are just beginning their digital journey. So buckle up, the road ahead is full of possibilities." ๐Ÿ›ฃ๏ธโœจ


Built with ๐Ÿฅค & โค๏ธ by Sakshi Nikam

ยฉ DRIVONS 2025 ยท All Rights Reserved ยท Academic & Portfolio Project

About

๐ŸŽ๏ธ DRIVONS โ€” A high-performance full-stack rental ecosystem with SQL-powered inventory control and with an AI-driven concierge for a seamless travel experience. โœจ

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors