Online House Rental Management System
Online House Rental Management System
1. INTRODUCTION
The general objective of this project is to develop a user-friendly and efficient House
Rental Management System that automates the process of managing rental properties,
thus reducing the workload for property owners and improving the rental experience
for tenants. The system will be accessible from any device with internet access, making
it convenient for users to manage rental activities on the go.
• Design and develop a user interface that is intuitive and easy to navigate for all user
types, including property owners, tenants, and administrators.
• Implement a secure authentication system that allows property owners, tenants, and
administrators to log in to the system and access their respective dashboards.
1
HOUSE RENTAL MANAGEMENT SYSTEM
• Develop a property management module that allows property owners to add, update,
and delete property listings, manage bookings, and track rental payments.
• Create a tenant management module that enables tenants to search for available
properties, book properties, and communicate with property owners.
• Implement an admin dashboard that provides the system administrator with tools to
manage users, properties, and overall system maintenance.
• Ensure database security and integrity by implementing best practices for data
storage, access control, and backup procedures.
Scope:
The House Rental Management System aims to provide an efficient platform for managing
rental properties, facilitating communication between property owners and tenants, and
streamlining the rental process. The scope of the study includes the following
functionalities:
• User Management: The system will handle the registration, login, and profile
management of three types of users: administrators, property owners, and tenants.
• Property Listing: Property owners can list their properties with detailed descriptions,
photos, and pricing. Tenants can search for and view available properties.
• Booking Management: Tenants can book properties online, and property owners can
manage these bookings, including accepting or rejecting booking requests.
• Payment Management: While the initial version of the system may not include online
payment processing, it will track payment statuses and notify users accordingly.
• Messaging System: The platform will include an internal messaging system for
communication between tenants and property owners.
2
HOUSE RENTAL MANAGEMENT SYSTEM
Limitations:
• Payment Integration: The initial implementation may not support online payment
gateways. Future versions could integrate with third-party payment processors.
• Mobile Responsiveness: While the system will be accessible from various devices, full
optimization for mobile devices may be limited in the initial phase.
• External API Integrations: Initial versions may lack integration with external services
like Google Maps for location-based searches, though these features could be added
later.
This study holds significant importance for various stakeholders involved in the rental property
management process. The system offers several benefits tailored to the needs of each user
group:
3.1. Administrator
• System Control: The administrator gains complete control over the platform, enabling
the management of users, properties, and overall system integrity. This helps maintain
a secure and organized system environment.
• User Management: Administrators can monitor and regulate the activities of property
owners and tenants, ensuring compliance with the system's terms and conditions.
3
HOUSE RENTAL MANAGEMENT SYSTEM
• Data Insights: The admin dashboard provides valuable insights into system usage, user
activity, and property performance, aiding in decision-making and future
enhancements.
3.2. Owner
• Efficient Property Management: Property owners can easily list, manage, and update
their properties, reducing the time and effort required to handle rental activities.
• Booking and Payment Tracking: Owners can track bookings, confirm reservations,
and monitor payment statuses in real time, improving cash flow management.
3.3. Tenant
• Convenient Property Search: Tenants can browse a wide range of properties with
detailed descriptions and photos, making it easier to find a suitable rental.
• Online Booking: The ability to book properties online provides tenants with the
convenience of securing accommodations without the need for physical visits or
lengthy negotiations.
• Direct Interaction with Owners: The messaging feature allows tenants to directly
communicate with property owners, ensuring transparency and resolving any concerns
or queries promptly.
4. DEFINITION OF TERMS
In the context of the House Rental Management System project, several key terms and
concepts are frequently referenced. The following definitions provide clarity and
understanding of these terms:
the connections between them. For this project, the architectural diagram would
illustrate the flow between the front-end (user interfaces for tenants, owners, and
admins), back-end logic (PHP scripts), and the MySQL database.
4.2. Feasibility
Feasibility refers to the assessment of how practical and achievable a project is. It
considers factors such as technical resources, time, cost, and operational aspects. In this
project, feasibility studies help determine whether the system can be successfully
developed and deployed given the available technology, skills, and budget. It typically
includes technical feasibility, economic feasibility, and operational feasibility.
Technical feasibility : The proposed system can be easily maintain and repair, because
the system is developed by familiar programming language The project team members
learned programming languages that required for the successful completion of the
project such as java script, CSS, HTML, JSP,MySQL. These languages are simple,
open source and already known, so the team developed the system easily.
Operational feasibility : The proposed system has been operationally functional and
user friendly. The users of system use the system to perform its regular task without
any ambiguity. The user of the system can understand the new system with little trial.
Operationally, the system has capable of producing quick and qualitative services to
user’s .therefore, the system developed is operationally more feasible.
5
HOUSE RENTAL MANAGEMENT SYSTEM
4.3. Hardware
Hardware refers to the physical components required to run the software system. In the
context of the House Rental Management System, hardware could include servers
where the system is hosted, client devices like computers or smartphones used by
tenants, owners, and administrators, and networking equipment that supports internet
connectivity.
4.4. MySQL
4.5. Report
A report in the context of this system refers to any structured presentation of data or
information generated by the system. For instance, reports might be generated by the
admin to view user activity, property performance, or booking trends. Reports are often
used for decision-making, monitoring system usage, or generating insights for further
improvements.
4.6. Software
Software refers to the programs and other operating information used by the computer.
For this project, the software includes all the PHP scripts, HTML/CSS files, JavaScript,
and MySQL databases that make up the House Rental Management System. It also
includes any external libraries, frameworks, or APIs used to enhance the system's
functionality, such as Bootstrap for responsive design or jQuery for enhanced
interactivity. The software is the core of the system, enabling all the intended
functionalities and user interactions.
6
HOUSE RENTAL MANAGEMENT SYSTEM
The real estate and rental industry has traditionally relied on physical interactions,
manual paperwork, and face-to-face negotiations to manage property rentals. With the
advent of digital technologies, there has been a significant shift toward automating and
digitizing these processes. This shift is driven by the need for more efficient,
transparent, and convenient ways to manage property rentals for both property owners
and tenants. The background of this study delves into the evolution of rental
management systems, from traditional methods to modern web-based platforms,
highlighting the impact of digitalization on the industry.
Various systems have been developed to manage different aspects of property rentals,
ranging from simple listing platforms to comprehensive property management systems
(PMS). These systems often include features like property listing management, tenant
and owner portals, booking and payment systems, and communication tools. Examples
include popular platforms like Airbnb, Zillow, and [Link], which offer online
property search and booking services. These systems provide valuable insights into best
practices and potential pitfalls, helping to shape the development of new rental
management solutions.
7
HOUSE RENTAL MANAGEMENT SYSTEM
Security and privacy are critical considerations in any online system, particularly one
that handles sensitive information such as user details, payment data, and property
ownership records. The literature review explores various security measures, including
encryption, secure authentication, access control, and data protection practices, that are
essential to safeguard the system against potential threats. It also examines privacy
concerns related to user data, discussing the importance of complying with regulations
like GDPR (General Data Protection Regulation) and ensuring that users' personal
information is handled responsibly.
AI has been increasingly integrated into house rental systems to enhance user
experience and operational efficiency. AI-driven features like recommendation engines,
chatbots, and predictive analytics are becoming more common in modern rental
platforms. These technologies can help match tenants with suitable properties, provide
instant customer support, and analyze market trends to optimize pricing strategies. The
literature review examines the current use of AI in rental systems and its potential to
revolutionize property management through advanced data analysis, automation, and
personalized user experiences.
6. METHODOLOGY
The methodology section outlines the approach and techniques used to develop the House
Rental Management System. It includes the following key steps:
• System Design: Creating the architectural diagram, database schema, and user
interface layouts.
• Development: Using PHP, MySQL, and other web technologies to code the system's
functionality.
8
HOUSE RENTAL MANAGEMENT SYSTEM
• Testing: Conducting unit, integration, and user acceptance testing to ensure the system
meets the requirements.
7. PLANNING
Planning involves setting the project timeline, milestones, and deliverables. It includes
identifying the resources required, assigning tasks to team members, and setting deadlines for
each phase of the project. A Gantt chart or similar project management tool may be used to
track progress and ensure that the project stays on schedule.
8. ANALYSIS
The analysis phase involves studying the requirements gathered during the initial stages of the
project to understand the system's functionality, constraints, and user expectations. This phase
may include a feasibility study to determine the technical, economic, and operational viability
of the project. The output of this phase is a detailed system specification document that serves
as a blueprint for the design and development phases.
9. DESIGNING
The designing phase focuses on creating the system's architecture, user interface, and database
design. This includes:
• System Architecture: Defining the overall structure of the system, including the
interaction between the front-end, back-end, and database.
• User Interface Design: Creating wireframes and prototypes of the user interface for
different user roles (admin, owner, tenant).
• Database Design: Designing the database schema, including tables, relationships, and
queries needed to store and retrieve data efficiently.
9
HOUSE RENTAL MANAGEMENT SYSTEM
10.1. Coding
Coding is the process of writing the actual code for the system using PHP for server-
side logic, MySQL for the database, and HTML/CSS/JavaScript for the front-end. This
phase involves translating the design into functional software, following best practices
for coding standards, and ensuring that the code is modular, maintainable, and efficient.
10
HOUSE RENTAL MANAGEMENT SYSTEM
10.2. Testing
Testing involves verifying that the system works as intended and meets the requirements
specified during the analysis phase. It includes:
• User Acceptance Testing (UAT): Having real users test the system to ensure it
meets their needs and expectations.
10.3. Operation
Operation refers to the deployment of the system in a live environment where users can
interact with it. This phase includes setting up the server, configuring the environment,
and ensuring that the system is accessible to all intended users. It may also involve
training users on how to use the system effectively.
10.4. Maintenance
Maintenance involves providing ongoing support to the system after deployment. This
includes fixing bugs, adding new features, and making updates to ensure the system
remains functional and secure. Maintenance is a continuous process that ensures the
system adapts to changing user needs and technological advancements.
The operating system refers to the software environment on which the House Rental
Management System will run. Typically, the system would be hosted on a server
running a Linux-based OS (such as Ubuntu), which is compatible with PHP and
MySQL. The choice of operating system is critical for ensuring compatibility, security,
and performance of the system.
The architectural diagram for the hardware interface typically depicts the relationship between
different hardware components and how they interact with the software system. Here's an
outline of what it might include for the House Rental Management System:
11
HOUSE RENTAL MANAGEMENT SYSTEM
• Client Devices: These are the devices used by tenants, owners, and administrators to
access the system. This could include desktops, laptops, tablets, and smartphones.
• Web Server: The server where the PHP scripts, HTML/CSS files, and other assets are
hosted. This server processes requests from client devices and interacts with the
database.
• Database Server: A dedicated server running MySQL, responsible for storing and
retrieving data related to users, properties, bookings, and messages.
System testing and implementation are crucial steps in the development process to ensure the
system operates correctly and meets the user's needs.
• System Testing:
o Unit Testing: Individual components of the system are tested for functionality.
o System Testing: The entire system is tested as a whole to verify that it meets
all requirements.
o User Acceptance Testing (UAT): The system is tested by actual users to ensure
it meets their needs and expectations.
12
HOUSE RENTAL MANAGEMENT SYSTEM
• Implementation:
o Go-Live: The system is officially launched, and users start using it in a live
environment.
• Server:
o RAM: 16 GB or higher
• Workstations:
o RAM: 8 GB or higher
13
HOUSE RENTAL MANAGEMENT SYSTEM
• Server:
• Workstations:
The existing system refers to the current methods or software in use for managing
doctor appointments. It may include manual systems (like paper-based records) or
outdated digital systems with limited functionality. Common issues with existing
systems might include lack of automation, inefficiencies in scheduling, poor data
management, and inadequate communication channels.
The below shown diagram is the E.R. (Entity Relationship) diagram of the Rental
Housing Management System. It shows us the information that has to be given by the
user end and also by the owner end for the proper working of the system. The user as
well as owner have to give their basic details, the user must give the proper details of
the house he/she wants and the owner should do the same for the property they want to
rent out
14
HOUSE RENTAL MANAGEMENT SYSTEM
The proposed system describes the new doctor appointment system being developed to address
the limitations of the existing system. It includes enhanced features like:
17.1 [Link]
<?php
session_start();
if(!isset($_SESSION["email"])){
15
HOUSE RENTAL MANAGEMENT SYSTEM
header("location:../[Link]");
include("[Link]");
include("[Link]");
?><head>
</head><body>
<div class="container-fluid">
<center><h3>Owner Profile</h3></center>
<div class="container">
16
HOUSE RENTAL MANAGEMENT SYSTEM
<?php
include("../config/[Link]");
$u_email= $_SESSION["email"];
$result=mysqli_query($db,$sql);
if(mysqli_num_rows($result)>0)
{ while($rows=mysqli_fetch_assoc($result)){
?>
<div class="card">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
17
HOUSE RENTAL MANAGEMENT SYSTEM
<form method="POST">
<div class="form-group">
<label for="email">Email:</label>
</div><div class="form-group">
<label for="address">Address:</label>
</div><div class="form-group">
<label>Your Id:</label><br>
18
HOUSE RENTAL MANAGEMENT SYSTEM
</div> <hr>
</form> </div>
<div class="modal-footer">
<div class="container">
<center><h3>See Messages</h3></center>
<?php
$owner_id=$rows['owner_id'];
$query1 = mysqli_query($db,$sql1);
} else {
if (mysqli_num_rows($query1) > 0) {
$tenant_id = $row['tenant_id'];
19
HOUSE RENTAL MANAGEMENT SYSTEM
} else {
if (mysqli_num_rows($query2) > 0) {
<div class="tab">
</div>
<?php
$query3 = mysqli_query($db,$sql3);
if(mysqli_num_rows($query3)>0) {
while($ro= mysqli_fetch_assoc($query3)){
echo $ro["message"]."<br>";
}} ?></div>
<div class="clearfix"></div><?php
}}}}}} }}?>
</div> </div>
<center><h3>Add Property</h3></center>
<div class="container">
<div id="map_canvas"></div>
20
HOUSE RENTAL MANAGEMENT SYSTEM
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label for="country">Country:</label>
<option value="Nepal">India</option>
</select> </div>
<div class="form-group">
<label for="province">Province/State:</label>
<option value="Karnataka">Karnataka</option>
<option value="Telangana">Telangana</option>
<option value="TamilNadu">TamilNadu</option>
<option value="Kerala">Kerala</option>
<option value="Goa">Goa</option>
<option value="Maharashtra">Maharashtra</option>
</select> </div>
<div class="form-group">
<label for="zone">Zone:</label>
21
HOUSE RENTAL MANAGEMENT SYSTEM
</div>
<div class="form-group">
<label for="district">District:</label>
</div>
<div class="form-group">
<label for="city">City:</label>
</div>
<div class="form-group">
<label for="vdc/municipality">VDC/Municipality:</label>
</div>
<div class="form-group">
<label for="tole">Tole:</label>
<div class="form-group">
22
HOUSE RENTAL MANAGEMENT SYSTEM
</select> </div>
<div class="form-group">
<div class="form-group">
23
HOUSE RENTAL MANAGEMENT SYSTEM
</div>
<tr>
<div class="form-group">
</div>
</tr>
</table>
<tr>
<div class="form-group">
<label><b>Photos:</b></label>
</div>
</tr>
</table>
<hr>
<div class="form-group">
<center><h3>View Property</h3></center>
<div class="container-fluid">
25
HOUSE RENTAL MANAGEMENT SYSTEM
<div style="overflow-x:auto;">
<table id="myTable">
<tr class="header">
<th>Id.</th>
<th>Country</th>
<th>Province/State</th>
<th>Zone</th>
<th>District</th>
<th>City</th>
<th>VDC/Municipality</th>
<th>Ward No.</th>
<th>Tole</th>
<th>Contact No.</th>
<th>Property Type</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Estmated Price</th>
<th>Total Rooms</th>
<th>Bedroom</th>
<th>Living Room</th>
<th>Kitchen</th>
<th>Bathroom</th>
<th>Description</th>
26
HOUSE RENTAL MANAGEMENT SYSTEM
<th>Photos</th>
</tr>
<?php
$u_email=$_SESSION['email'];
$result1=mysqli_query($db,$sql1);
if(mysqli_num_rows($result1)>0) {
while($rowss=mysqli_fetch_assoc($result1)){
$owner_id=$rowss['owner_id'];
$result=mysqli_query($db,$sql);
if(mysqli_num_rows($result)>0) {
while($rows=mysqli_fetch_assoc($result)){
$property_id=$rows['property_id'];
?>
<tr>
27
HOUSE RENTAL MANAGEMENT SYSTEM
$query=mysqli_query($db,$sql2);
if(mysqli_num_rows($query)>0) {
while($row=mysqli_fetch_assoc($query)){ ?>
<center><h3>Update Property</h3></center>
<div class="container-fluid">
<div style="overflow-x:auto;">
28
HOUSE RENTAL MANAGEMENT SYSTEM
<table id="myTable">
<tr class="header">
<th>Id.</th>
<th>Country</th>
<th>Province/State</th>
<th>Zone</th>
<th>District</th>
<th>City</th>
<th>VDC/Municipality</th>
<th>Ward No.</th>
<th>Tole</th>
<th>Contact No.</th>
<th>Property Type</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Estmated Price</th>
<th>Total Rooms</th>
<th>Bedroom</th>
<th>Living Room</th>
<th>Kitchen</th>
<th>Bathroom</th>
<th>Description</th>
<th>Photos</th>
<th>Edit/Delete</th>
29
HOUSE RENTAL MANAGEMENT SYSTEM
</tr> <?php
$result=mysqli_query($db,$sql);
if(mysqli_num_rows($result)>0)
while($rows=mysqli_fetch_assoc($result)){
$property_id=$rows['property_id'];
?> <tr>
30
HOUSE RENTAL MANAGEMENT SYSTEM
$query=mysqli_query($db,$sql2);
if(mysqli_num_rows($query)>0)
while($row=mysqli_fetch_assoc($query)){ ?>
<?php }} ?>
</table>
<div class="container">
<div id="map_canvas"></div>
31
HOUSE RENTAL MANAGEMENT SYSTEM
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label for="country">Country:</label>
<option value="Nepal">India</option>
</select>
</div>
<div class="form-group">
<label for="province">Province/State:</label>
<option value="Karnataka">Karnataka</option>
<option value="Telangana">Telangana</option>
<option value="TamilNadu">TamilNadu</option>
<option value="Kerala">Kerala</option>
<option value="Goa">Goa</option>
<option value="Maharashtra">Maharashtra</option>
<label for="zone">Zone:</label>
32
HOUSE RENTAL MANAGEMENT SYSTEM
<label for="district">District:</label>
<label for="city">City:</label>
<label for="vdc/municipality">VDC/Municipality:</label>
<label for="tole">Tole:</label>
<div class="form-group">
33
HOUSE RENTAL MANAGEMENT SYSTEM
</select> </div>
<div class="form-group">
34
HOUSE RENTAL MANAGEMENT SYSTEM
<center><h3>Booked Property</h3></center>
<div class="container">
<table id="myTable">
<tr class="header">
<th>Booked By</th>
<th>Booker Address</th>
<th>Property Province</th>
<th>Property District</th>
<th>Property Zone</th>
35
HOUSE RENTAL MANAGEMENT SYSTEM
<th>Property Tole</th>
</tr>
<?php
include("../config/[Link]");
$u_email= $_SESSION["email"];
$result3=mysqli_query($db,$sql3);
if(mysqli_num_rows($result3)>0)
while($rowss=mysqli_fetch_assoc($result3)){
$owner_id=$rowss['owner_id'];
$result2=mysqli_query($db,$sql2);
if(mysqli_num_rows($result2)>0)
while($ro=mysqli_fetch_assoc($result2)){
$property_id=$ro['property_id'];
$result=mysqli_query($db,$sql);
if(mysqli_num_rows($result)>0)
while($rows=mysqli_fetch_assoc($result)){
?>
36
HOUSE RENTAL MANAGEMENT SYSTEM
<tr>
<?php
$tenant_id=$rows['tenant_id'];
$property_id=$rows['property_id'];
$result1=mysqli_query($db,$sql1);
if(mysqli_num_rows($result1)>0)
while($row=mysqli_fetch_assoc($result1)){
?>
</tr>
17.2 [Link]
<?php
session_start();
37
HOUSE RENTAL MANAGEMENT SYSTEM
include("[Link]"); ?>
<style>
body, html {
height: 100%;
margin: 0;
}.bg {
background-image: url("images/[Link]");
/* Full height */
height: 40%;
background-position: bottom;
background-repeat: no-repeat;
background-size: cover;
}.fa {
padding: 20px;
font-size: 30px;
text-align: left;
text-decoration: none;
}.fa:hover {
opacity: 0.7;}
.fa-facebook {
background: #3B5998;
38
HOUSE RENTAL MANAGEMENT SYSTEM
color: white;
}.fa-linkedin {
background: #007bb5;
color: white;}
.active-cyan-3 input[type=text] {
}</style>
<div class="bg"></div><br>
</form></div><br><br>
<?php include("[Link]");
?> <br><br>
17.3 [Link]
<?php
include("config/[Link]");
if(isset($_POST['book_property'])){
if(isset($_SESSION["email"])){
global $db,$property_id;
$u_email=$_SESSION["email"];
$property_id=$_GET['property_id'];
39
HOUSE RENTAL MANAGEMENT SYSTEM
$query=mysqli_query($db,$sql);
if(mysqli_num_rows($query)>0) {
while ($rows=mysqli_fetch_assoc($query)) {
$tenant_id=$rows['tenant_id'];
$query1=mysqli_query($db,$sql1);
$query2=mysqli_query($db,$sql2);
if($query2) {
$email=$rows['email'];
$recipient=$email;
$subject="Property Booked";
$mailheaders="From: RentHouse\n";
mail($recipient,$subject,$msg,$mailheaders);
?><style>
.alert {
padding: 20px;
background-color: #DC143C;
color: white;
.closebtn {
40
HOUSE RENTAL MANAGEMENT SYSTEM
margin-left: 15px;
color: white;
font-weight: bold;
float: right;
font-size: 22px;
line-height: 20px;
cursor: pointer;
transition: 0.3s; }
.closebtn:hover {
color: black;
</style>
<script>
[Link](function() {
$(this).remove(); });
}, 2000);
</script>
<div class="container">
<spanclass="closebtn"onclick="[Link]='none';">&ti
mes;</span>
41
HOUSE RENTAL MANAGEMENT SYSTEM
18.1 Dashboard
18.2 Login
42
HOUSE RENTAL MANAGEMENT SYSTEM
43
HOUSE RENTAL MANAGEMENT SYSTEM
44
HOUSE RENTAL MANAGEMENT SYSTEM
18.7 Add_property
45
HOUSE RENTAL MANAGEMENT SYSTEM
46
HOUSE RENTAL MANAGEMENT SYSTEM
47
HOUSE RENTAL MANAGEMENT SYSTEM
48
HOUSE RENTAL MANAGEMENT SYSTEM
This Rental Housing Management System is a web application that is made by using
HTML, CSS, JS, MySQL. All of this was developed in visual studio code by Microsoft.
Our rental house software is a very convenient and user friendly software and it
provides its users with various new features for enhancing their experience. The user
will enter into our website and first he has to log-in or sign-up with their credentials
and then they will be directed to our webpage where they will have to select the region
in which they want to rent a house and then after that they will be shown all the available
properties in that specific area, from there they can select the house that meet their
demands. This rental software will enhance the renter owner relationship and will aim
at making customers’ lives easier.
Our webpage will provide an user-friendly interface and both the tenants and the owner
can be benefited by the website. Users are provided with easy registration and login
with OTP and password for security purposes. Separate portals are provided for both
the buyers and the sellers. The search bar is provided with the filter search technique
which recommends the user with the houses as per his/her requirements and budget.
Our webpage will provide the recent images of the house and contact details of the
owner for transparency.
Future directions
• To also provide service to a user like personal transportation support which are
directly connected to Ola Cabs, Uber where a user can book a cab for its destination
which with 2-4% discount.
• To make our online web application also for Android and IOS app systems.
• To add dynamic features and also create an AI Chat bot which helps you to solve your
biggest problem regarding transaction, using this online web application.
• To make our application system on voice command also with different languages.
49
HOUSE RENTAL MANAGEMENT SYSTEM
[Link]
50