Final Thesis Code
Final Thesis Code
Abhijeet Yadav
Rishabh Bhagadkar
Rugvedika Baraskar
Abhilekha Jilhare
Project Guide
Mr. N. S. Bhattad
Lecturer in Department of Computer Technology at
Dharampeth Polytechnic, Nagpur
2024-2025
CERTIFICATE
This is to certify that Abhijeet Yadav, Rishabh Bhagadkar, Rugvedika Baraskar and Abhilekha
Jilhare having Enrollment No (23313270072), (23313270070), (23313270073), (23313270076), of 3rd
year Computer Technology has completed the project work entitled “Car Rental System” in partial
fulfilment for award of Diploma in Computer Technology.
They have worked under my guidance and fulfilled the requirement for the submission of this thesis
during the session 2024-2025 under the guidance of Mr. N. S. Bhattad
We are pleased to acknowledge Mr. N. S. Bhattad for their invaluable guidance during the course of this
project work. As our project Car Renatal System which envelops the automation of all work. In this
project we have tried to make our project more understandable and an make it in a simple way so that it
should be more easy to the witness.
We would also like to give special thanks to all the talented personalities of our institute who had given us
a moral support completing our visual basic project.
ABSTRACT
The Car Rental System is a web-based application designed and developed using HTML, CSS, JavaScript,
PHP, with the primary goal of simplifying and automating the process of renting cars for both users and
administrators. In the modern digital era, the demand for efficient, user-friendly, and accessible platforms has
increased significantly, and this system addresses that need by offering an organized solution for car rental
The system features two main modules: Client Interface and Admin Interface. The Client Interface allows users
sign up or log in securely using either their phone number or email ID, browse available cars with real-time and
details, request car rentals, and communicate with the admin. The Admin Interface provides complete control over
the system, allowing administrators to manage car listings, approve or reject rental requests, monitor user , and
handle messages from clients.
The front-end of the system utilizes HTML for structure, CSS for design and responsiveness, and JavaScript for
dynamic interactions. The back-end is powered by PHP, which handles server-side operations such as session
management, form processing, and interaction with the MySQL database. This technology stack ensures is
lightweight, scalable, and easy to maintain. The Car Rental System enhances the user experience through an
intuitive layout, clean navigation, and responsive design. It minimizes manual work, reduces human error, and
saves time for both clients and admins. Furthermore, the system has been designed to be easily extendable for
future features such as online payments, driver integration, and real-time tracking.
This project not only fulfills the basic requirements of a car rental platform but also provides a robust and
framework for digital transformation in the car rental industry.
CONTENTS PAGE NO
ABSTRACT iv
1.0 INTRODUCTION 7
`15
3.1 Data Flow Diagram(DFD)
`16
3.2 (DFD)2
`17
3.3 Flow Of Project
18
3.4 Use Case Diagram
4.0 METHODOLOGY 20
4.3 Overview 22
5.0 TESTING 26
9.0 Application 58
60
10.0 REFERENCES
CHAPTER 1
INTRODUCTION
Traditional car rental services rely on manual bookings, paperwork, and in-person
verification, which are time- consuming and prone to delays or errors. The proposed system
overcomes these limitations by offering a seamless and secure way to manage the entire car
rental process online. This project aims to provide: Automated Rental Request System –
Clients can book a car based on availability. Centralized Admin Management – Admin can
add/edit/delete car listings, approve or reject requests, and view payment history.
Secure Login and Registration – Clients can register and log in using their email or mobile
number with a password. Dynamic Interaction – Messaging between clients and admin
enables better customer service. Online Payment Feature – Clients can make payments
securely through integrated payment gateways .
This project aims to provide:
Automated Rental Request System – Clients can book a car based on availability.
Centralized Admin Management – Admin can add/edit/delete car listings, approve or reject
requests, and payment history.
Secure Login and Registration – Clients can register and log in using their email or mobile
number with a password.
Dynamic Interaction – Messaging between clients and admin enables better customer service.
Online Payment Feature – Clients can make payments securely through integrated payment
gateways
CHAPTER 2
LITERATURE REVIEW
The shift from traditional car rental methods to digital platforms has revolutionized the way rental services
operate. Previously, customers had to visit rental offices, fill out physical forms, and wait for approvals — a
process that was both inefficient and timeconsuming. With the increasing demand for flexibility,
transparency, and speed,web-based car rental systems have emerged as a necessity.
.
Many existing systems offer basic features such as listing cars and collecting customer details. However,
they often lack automation, multi-role access, online payment integration, and real-time communication.
The Car Rental System project addresses these gaps by offering an advanced solution that integrates all
essential features into a single, easy-to-use interface.
2.1 PROBLEM SPECIFICATION
Car rental businesses often face challenges such as manual booking processes, delayed approvals, lack of
centralized records, and miscommunication between clients and service providers. Clients, on the other
hand, expect faster services, transparent pricing, and the ability to book rentals online without hassle. The
proposed Car Rental System resolves these issues by enabling clients to: View and filter available cars,
Send rental requests with preferred dates, Communicate with the admin for assistance, Make secure
payments online.
Meanwhile, the admin can: Manage the entire system via a web interface, Approve or reject rental
requests based on availability, Communicate with clients and maintain payment history, Track user
activity and system performance.
This online platform promotes real-time access, accurate data handling, and complete control over rental
operations.
1. Enhanced Security Features Implement two-factor authentication (2FA) for user and admin login.
Use prepared statements and input sanitization throughout the system to prevent SQL injection.
Introduce CAPTCHA on login and signup forms to avoid bot registrations.
2. Online Payment Integration Integrate trusted payment gateways like Razorpay, Stripe, or PayPal to enable
secure online transactions. Include options for advance booking fees, refunds, and payment tracking in the
admin panel.
3. Live Availability and Booking Calendar Use AJAX or real-time APIs to show live availability of cars.
Integrate a booking calendar system that highlights available and reserved dates for each car. 4. Vehicle
Management Enhancements Allow admins to upload multiple images per vehicle with image galleries
2.2 BACKGROUND AND RELATED WORK
Traditional car rental services rely on manual bookings, paperwork, and in-person verification, which are time-
consuming and prone to delays or errors. The proposed system overcomes these limitations by offering a
seamless and secure way to manage the entire car rental process online. This project aims to provide:
Automated Rental Request System – Clients can book a car based on availability. Centralized Admin
Management – Admin can add/edit/delete car listings, approve or reject requests, and view payment history.
Secure Login and Registration – Clients can register and log in using their email or mobile number with a
password. Dynamic Interaction – Messaging between clients and admin enables better customer service
This project is a web-based application developed using PHP, HTML, CSS, JavaScript, AJAX, MySQL, and
jQuery. It includes two main interfaces — Admin Panel and Client Panel. Clients can browse available cars, a car
for rent, send messages to the admin, and complete payments online. The admin, on the other hand, has complete
control over managing car listings, rental requests, payments.
CHAPTER 3
DESIGN AND WORKING OF PROCESS
3.1 DFD 01
3.2 DFD 02
.
3.3 Flow Of the Project
3.4 Use Case Diagram
CHAPTER 4
METHODOLOGY
APP REQUIREMENT: -
RAM: - 1 GB
STORAGE: - 8 G B
• Application features Secure Login System for both Admin and Clients
Interactive User Interface using jQuery and JavaScript Live Request Status Update through AJAX
• Specific Requirements will describe the functions of actors, their role in the system and constraints.
• Objective: -
• Existing system: -
Most car rentals are still managed manuallyor through basic phone call bookings. Lack of
instant communication and transparency between provider and client.
• Scope: -
• User requirement: -
Client: Needs a way to browse, request, and pay for rentals online.
Admin: Requires a centralized panel to manage rentals, cars, and users.
• Overall Description: -
The rest of this document will give further details on the overall product description, including the
hardware, software, and communications interfaces, product functions, user characteristics, and any
assumptions that will be made.
. Performance requirements
• The app should function smoothly on devices with at least 1GB RAM.
• Task operations should respond within milliseconds.
• The Pomodoro Timer should run accurately without interruptions.
Design requirements
• Simple and intuitive UI for easy navigation.
.
Performance requirements
• The app should function smoothly on devices with at least 1GB RAM.
• Task operations should respond within milliseconds.
• The Pomodoro Timer should run accurately without interruptions.
Design requirements
• Simple and intuitive UI for easy navigation.
Software Attributes
• Developed using Java, XML, and Android SDK.
Objectives of Testing
• To ensure that all the functionalities of the Car Rental System work correctly.
• To identify any bugs or issues in the client and admin modules
• To validate that user input is correctly processed and stored in the database.
• To confirm that the system meets the user requirements and design specifications.
Modules Tested:
User Signup & Login: Tested with valid and invalid credentials, blank fields, and
incorrect formats. Car Booking: Validated the booking process with different inputs like
past dates, invalid duration, missing data, etc. Contact Admin: Sent messages with and
without subjects to test validations.
Navigation Testing:
Ensured all pages (Home, Cars, Contact, Profile) were linked properly. Error Handling:
Checked how the system reacts when incorrect forms are submitted.
Results: The system displayed appropriate success and error messages. The
application prevented unauthorized access and blank submissions. Booking requests
were generated correctly and displayed in the admin panel.
5.3 Test Cases
Database Configuration
1. Open phpMyAdmin -> Create Database cars -> Import database cars.sql
2. Registered User
(A)
.
(B)
.
(C)
(D)
CODE
6.1 DATABASE:
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
--
-- Database: `cars`
--
-- --------------------------------------------------------
--
-- Table structure for table `admin`
--
--
-- Dumping data for table `admin`
--
--
-- Dumping data for table `cars`
--
INSERT INTO `cars` (`car_id`, `car_name`, `car_type`, `image`, `hire_cost`, `capacity`, `status`) VALUES
(1, 'Mercedes Benz', 'Mercedes Benz', 'car1.jpg', 20000, 5, 'Available'),
(2, 'Range Rover', 'LandRover', 'car2.jpg', 30000, 6, 'Available'),
(3, 'Harrier', 'Toyota', 'car3.jpg', 20000, 6, 'Available'),
(5, 'LandCruiser V8', 'LandCruiser ', 'images (2).jpg', 20000, 5, 'Available'),
(6, 'Security Vehicles', 'Hammar Cars', 'sonkort2.png', 30000, 8, 'Available'),
(7, 'Wedding Limousine', 'Wedding Limousine', 'images (3).jpg', 50000, 10, 'Available');
-- --------------------------------------------------------
--
-- Table structure for table `client`
--
--
-- Dumping data for table `client`--
INSERT INTO `client` (`client_id`, `fname`, `email`, `id_no`, `phone`, `location`, `gender`, `car_id`, `status`,
`mpesa`) VALUES
(2, 'felix kiamba', '[email protected]', 30073147, 705053484, 'nairobi', 'Male', 1, 'Approved',
'GTD45H7H6'),
(3, 'concepter', '[email protected]', 27695131, 707403614, 'kisii', 'Female', 2, 'Approved', 'DJFL870FDK9'),
(4, 'enock bosire', '[email protected]', 1234567, 717056766, 'narok', 'Male', 2, 'Approved', 'HJHK678X');
-- --------------------------------------------------------
--
-- Table structure for table `hire`
--
-- --------------------------------------------------------
--
-- Table structure for table `message`
--
--
-- Dumping data for table `message`
--
a img { border:0; }
#navigation { height:36px;}
#navigation ul{ list-style-type: none;}
#navigation ul li{ float:left; display:inline; margin-right:2px;}
#navigation ul li a,
#navigation ul li a span { float:left; height:36px; background:url(images/tab.gif) no-repeat 0 0; padding:0 0 0
15px;}
#navigation ul li a span { background-position:right 0; padding:0 15px 0 0;}
#navigation ul li a { line-height:36px; color:#907525; text-decoration: none; }
#navigation ul li a.active,
#navigation ul li a:hover { background-position:0 bottom;}
#main {}
#content { float:left; width:750px; }
#sidebar { float:right; width:225px; }
.table {}
.table th{ background:#fffdfa url(images/th.gif) repeat-x 0 0; color:#818181; text-align: left; padding:7px 10px;
border-bottom:solid 1px #d2d1cb;}
.table td{ background:#fbfcfc; border-bottom:solid 1px #e0e0e0; padding:8px 10px; }
.table tr.odd td{ background:#f8f8f8; }
.table tr:hover td{ background:#fff9e1; }
.table a.ico{ }
.size1 { width:716px; }
.size2 { width:80px; }
.size3 { width:120px; }
textarea.size1 { height:180px; }
.box-content { padding:10px; }
.box-content p { padding-top:10px; }
.select-all{}
.select-all label{ text-decoration: underline; padding-left:4px; }
.add-button,
.add-button span { float:left; height:26px; background:url(images/add-button.gif) no-repeat 0 0; padding:0 0 0
28px; }
.add-button span { background-position:right 0; padding:0 10px 0 0; }
.add-button { font-weight: bold; font-size:12px; color:#747474; text-decoration: none; line-height:26px; }
.add-button:hover { color:#333;}
6.3 PHP:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Car Rental</title>
<meta charset="utf-8">
<meta name="author" content="pixelhint.com">
<meta name="description" content="La casa free real state fully responsive html5/css3 home page website
template"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" />
<section class="caption">
<h2 class="caption" style="text-align: center">Find You Dream Cars For Hire</h2>
<h3 class="properties" style="text-align: center">Range Rovers - Mercedes Benz - Landcruisers</h3>
</section>
</section><!-- end hero section -->
<section class="search">
<div class="wrapper">
<div id="fom">
<form method="post">
<h3 style="text-align:center; color: #000099; font-weight:bold; text-decoration:underline">Admin Login
Area</h3>
<table height="100" align="center">
<tr>
<td>Email Address:</td>
<td><input type="text" name="uname" placeholder="Enter Username" required></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="pass" placeholder="Enter Password" required></td>
</tr>
<tr>
<td colspan="2" style="text-align:center"><input type="submit" name="login" value="Login
Here"></td>
</tr>
</table>
</form>
<?php
if(isset($_POST['login'])){
include 'includes/config.php';
$uname = $_POST['uname'];
$pass = $_POST['pass'];
$query = "SELECT * FROM admin WHERE uname = '$uname' AND pass = '$pass'";
$rs = $conn->query($query);
$num = $rs->num_rows;
$rows = $rs->fetch_assoc();
if($num > 0){
session_start();
$_SESSION['uname'] = $rows['uname'];
$_SESSION['pass'] = $rows['pass'];
echo "<script type = \"text/javascript\">
alert(\"Login Successful.................\");
window.location = (\"admin/index.php\")
</script>";
} else{
echo "<script type = \"text/javascript\">
alert(\"Login Failed. Try Again................\");
window.location = (\"login.php\")
</script>";
}
}
?>
</div>
<a href="#" class="advanced_search_icon" id="advanced_search_btn"></a>
</div>
<footer>
<div class="wrapper footer">
<ul>
<li class="links">
<ul>
<li>OUR COMPANY</li>
<li><a href="#">About Us</a></li>
<li><a href="#">Terms</a></li>
<li><a href="#">Policy</a></li>
<li><a href="#">Contact</a></li>
</ul>
</li>
<li class="links">
<ul>
<li>OTHERS</li>
<li><a href="#">...</a></li>
<li><a href="#">...</a></li>
<li><a href="#">...</a></li>
<li><a href="#">...</a></li>
</ul>
</li>
<li class="links">
<ul>
<li>OUR CAR TYPES</li>
<li><a href="#">Mercedes</a></li>
<li><a href="#">Range Rover</a></li>
<li><a href="#">Landcruisers</a></li>
<li><a href="#">Others.</a></li>
</ul>
</li>
REVIEW
The Car Rental System project was successfully developed using PHP, MySQL,
HTML, CSS, and JavaScript. All intended functionalities including user login,
car booking, admin approval system, and message communication between client
and admin were implemented and tested thoroughly.
The results of the system are as follows:
1) Users can register, log in, and request car rentals easily.
2) Admins are able to manage car listings and booking requests efficiently.
3) All modules were tested under different conditions and performed as expected.
4) The user interface is intuitive and responsive, which enhances user experience.
Discussion:
The application ensures smooth communication and efficient car booking management.
However, features like real-time fare calculation based on distance or time, payment
integration, and GPS-based car tracking can be added in the future to enhance system
functionality and usability.
The development of the Car Rental System using HTML, CSS, JavaScript, and PHP
highlights the practical application of full-stack web development technologies in solving
real-world problems. Throughout the development process, several key aspects were
considered, including user experience, system security, functionality, and scalability.
The separation of interfaces for clients and admins ensured role-based access, simplifying
usability and administration. Front-end technologies were effectively used to create a
clean, responsive layout, while PHP handled server-side operations such as data
processing, authentication, and rental management. JavaScript added interactivity and
validations, reducing user errors and enhancing overall experience.
One of the major discussions during development was how to balance ease-of-use with
system performance. Special attention was given to designing intuitive navigation,
minimizing loading times, and displaying vehicle data clearly, including images and
rental details.
Security was also a critical consideration, especially in handling user login and sensitive
data. Input validations, password hashing, and session management were implemented to
prevent unauthorized access.
Additionally, the project opened avenues for exploring advanced topics such as real-time
booking status updates, automated emails, and data analytics—all of which could be
integrated in future versions.
CHAPTER 8
CONCLUSION AND FUTURE SCOPE
Conclusion:
The Car Rental System developed using HTML, CSS, JavaScript, and PHP successfully fulfills
the requirements of a modern web-based vehicle booking platform. The system provides two
interfaces—client and admin—each with tailored functionalities. Clients can register, log in,
browse available cars with images, request rentals, and communicate with the admin. Admins
can efficiently manage rental requests, approve or reject bookings, and maintain communication
with users.
The project demonstrates practical implementation of front-end technologies (HTML, CSS,
JavaScript) for a responsive and interactive user interface, while the back-end, developed in
PHP, ensures robust data handling and secure user authentication. The integration of web
technologies creates a smooth, user-friendly experience across devices.
In conclusion, this system reduces manual effort, enhances rental process efficiency, and
provides a scalable foundation for future features such as online payments, driver assignment,
and real-time vehicle tracking. It proves to be a valuable solution for small to medium car rental
businesses aiming for digital transform
The Car Rental System developed with HTML, CSS, JavaScript, and PHP provides
a strong foundation for automating the vehicle rental process
Future Scope
5. Driver Assignment and Ratings A feature to assign drivers along with cars and
allow users to rate and review both vehicles and drivers can improve service quality
and trust.
The Car Rental System developed using HTML, CSS, JavaScript, and PHP has a
wide range of real-world applications, particularly in the transportation and travel
industries. Its flexibility, scalability, and user-friendliness make it suitable for
various use cases.
1. Local Car Rental Businesses Small to medium-sized car rental companies can
use this system to digitize their operations. It eliminates the need for manual
bookings, physical paperwork, and face-to-face interactions by offering a
complete online platform.
2. Tourism and Travel Agencies Travel agencies can integrate this system into
their websites to allow tourists to book vehicles online in advance. This provides
added convenience to travelers and streamlines vehicle management for agencies.
3. Airport Car Rentals The system can be adapted for use at airports, where
travelers often require vehicles upon arrival. With real-time availability and
instant booking, this system can improve customer service and reduce wait times.
5. Peer-to-Peer Car Sharing Platforms With additional features, the system can
support peer-to-peer (P2P) vehicle sharing, where individual car owners list their
vehicles for rent, and users can browse and book available options.
6. Self-Drive and Chauffeur-Driven Rentals The platform can support both self-
drive and driver-assigned bookings, offering flexibility to customers based on
their needs and preferences.
.
CHAPTER 10
REFERENCES
➢ During the development of this project, a wide range of resources was consulted. Our references
include subject notes, design principles from various articles, data from reputable websites and
books, and several open source and paid resources. Most of the code was developed in-house,
though certain sections were inspired by articles from popular technical websites. Key sources
include:
a. Internal lecture notes and course handouts provided bythe Department of Computer
Technology.
a. Documentation for PHP, JavaScript, and BootStrap, which were crucial in the
development of the application.