Download as pdf or txt
Download as pdf or txt
You are on page 1of 59

Tribhuvan University

Faculty of Humanities and Social Science

HOUSE RENTAL SYSTEM

A PROJECT REPORT

Submitted to
Department of Computer Application
Itahari Namuna College

In partial fulfillment of the requirements for the Bachelors in Computer


Application

Submitted by
Name: Roshan Shrestha
Name: Anil Diyali
December, 2023

Under the Supervision of


Saroj Ojha

i
TRIBHUVAN UNIVERSITY

FACULTY OF HUMANITIES AND SOCIAL SCIENCES

ITAHARI NAMUNA COLLEGE

SUPERVISOR’S RECOMMENDATION

I hereby recommend that this project prepared under my supervision by Roshan Shrestha
and Anil Diyali entitled “HOUSE RENTAL SYSTEM” in partial fulfilment of the
requirements for the degree of Bachelor’s in Computer Application is recommended for
the final evaluation.

Saroj Ojha
Project Supervisor
Itahari Namuna College
Itahari-8, Sunsari

ii
TRIBHUVAN UNIVERSITY

FACULTY OF HUMANITIES AND SOCIAL SCIENCES

ITAHARI NAMUNA COLLEGE

LETTER OF APPROVAL

This is to certify that this project prepared by Roshan Shrestha and Anil Diyali entitled
“HOUSE RENTAL SYSTEM” in partial fulfilment of the requirements for the degree of
Bachelor’s in Computer Application has been evaluated. In our opinion it is satisfactory in
the scope and quality as a project for the required degree.

Saroj Ojha Nabin Shrestha


Supervisor HOD/Coordinator
Itahari Namuna College Itahari Namuna College

Internal Examiner External Examiner


Itahari Namuna College (INC) Tribhuvan University (TU)

iii
ACKNOWLEDGEMENT
The success and final outcomes of this project requires a lot of guidance and assistance
from many people and are very fortunate to have this all along the completion of this
project. We would like to express our gratitude and appreciation to all those who gave us
the possibility to complete this project. We are very glad to express our deepest sense of
gratitude and sincere thanks to our supervisor Saroj Ojha and project teacher Mr.Saman Kc
whose contribution in simulating suggestions and encouragement helped us in completing
our project.

We are also thankful to Mr. Nabin Shrestha, HOD, Itahari Namuna College and Mr.
Dharma Neupane, Principal, Itahari Namuna College for encouraging and guiding us
throughout the completion of this project. All useful suggestions for this whole work and
co-operative behavior are sincerely acknowledged.

Last but not the least, many thanks go to our teachers, friends, guardians who directly or
indirectly helped us in achieving the goal. We would like to appreciate all the guidance and
support, which helped in completion of this project. Special thanks to their comment and
advices.

iv
ABSTRACT
This is a project report for the project entitled "House Rental System". This is an web
application developed aiming all the rental company to use this application and make
flexible or helpful for customer to renting the House online.

We are stuck with technology when want is just stuff that works. With the current paradigm
shift in the technological field, there is an urgent need to embrace and appreciate the power
of technology. The housing sector remains vigilant to face the challenges of change by
employing a new strategy that facilitates easy management of rental houses. Hence there is
a need to develop a rental house management system that can simplify work for the rental
managers so that all their work can be efficient and effective.

Keywords: House, Room, Enquiry, Renting, Flat, Upload, Property

v
TABLE OF CONTENTS

SUPERVISOR’S RECOMMENDATION ..........................................................................ii

LETTER OF APPROVAL .................................................................................................iii

ACKNOWLEDGEMENT .................................................................................................. iv

ABSTRACT......................................................................................................................... v

LIST OF FIGURE.............................................................................................................viii

LIST OF TABLES .............................................................................................................. ix

LIST OF ABBREVIATIONS .............................................................................................. x

CHAPTER 1: INTRODUCTION ........................................................................................ 1

1.1 Introduction ..................................................................................................... 1

1.2 Problem Statement .......................................................................................... 1

1.3 Objectives........................................................................................................ 1

1.4 Scope and Limitations ........................................................................................... 1

1.4.1 Scope ................................................................................................................ 1

1.4.2 Limitation......................................................................................................... 2

1.5 Report Organization .............................................................................................. 2

1.6 Assignment of Roles and Responsibilities ............................................................ 2

CHAPTER 2: LITERATURE REVIEW ............................................................................. 4

2.1 Background Study ................................................................................................. 4

2.2 Literature Review .................................................................................................. 4

CHAPTER 3: SYSTEM ANALYSIS AND DESIGN ........................................................ 6

3.1 System Analysis .................................................................................................... 6

3.1.1 Requirement Analysis ...................................................................................... 6

3.1.2 Feasibility Study .............................................................................................. 9

3.1.3 Data Modelling (ER Diagram)....................................................................... 10

3.2 System Design ..................................................................................................... 12

3.2.1 Architectural Design ...................................................................................... 12


3.2.2 Database Schema Design ............................................................................... 12

3.2.3 Interface Design ............................................................................................. 14

3.2.4 Software Design ............................................................................................. 18

CHAPTER 4: IMPLEMENTATION AND TESTING ..................................................... 22

4.1 Implementation.................................................................................................... 22

4.1.1 Tools Used ..................................................................................................... 22

4.1.2 Implementation Details of Modules............................................................... 23

4.2 Testing ................................................................................................................. 23

4.2.1 Test Cases for Unit Testing............................................................................ 24

4.2.2 Test Cases for System Testing ....................................................................... 26

CHAPTER 5: CONCLUSION AND FUTURE WORKS ................................................. 28

5.1 Lesson Learnt / Outcome .................................................................................... 28

5.2 Conclusion ........................................................................................................... 28

5.3 Future Recommendations .................................................................................... 28

REFERENCES .................................................................................................................. 29

APPENDICES ................................................................................................................... 30

Appendix 1: Screenshots ........................................................................................... 30

Appendix 3: Database Table Screenshots ................................................................. 48


LIST OF FIGURE

Figure 3.1: Waterfall Model………………..………………….….….……….….…….6

Figure 3.2: Use Case Diagram……….……………….…….…….……….….…..……8

Figure 3.3: Gantt Chart……………….………………….…….…….….…………….10

Figure 3.4: ER Diagram……………………….……….….……….….……….……...10

Figure 3.6: Level 1 DFD…………………….…….….…………..………….….….....11

Figure 3.7.1: Admin Level 2 DFD………………………………..…..…….…….…..11

Figure 3.7.2: User Level 2 DFD….…………..….….………….……….………….....12

Figure 3.8: Architectural Diagram…………..……...……….………………...…...…13

Figure 3.9: Database Schema…………….…….…....……….…………………….…14

Figure 3.10.1: User Home Page Design….…….……………..………………………15

Figure 3.10.2: Admin Dashboard Design….…...………….…….……………………17

Figure 3.10.3: User Listing Page Design.….….……………….…..….……………...16

Figure 3.10.4: User Login Page Design…………..……..…………..…….…….……16

Figure 3.10.5: User Update Password Design………….…………....…...….…….…16

Figure 3.10.6: User Dashboard……………………...……….…….…...…...………..17

Figure 3.10.7: User Listing Account Page Design….……….………..….…..……….17

Figure 3.10.8: Post Property Page Design…….…..………………………....………..18

Figure 3.11.1: Login Sequence Diagram……………….……….…….…..……….…19

Figure 3.11.2: Admin Sequence Diagram………………….………………..…….…..20

Figure 3.11.3: User Sequence Diagram………………..……………………....……...21

Figure 3.12: Activity Diagram……………………….…..……………………………22

viii
LIST OF TABLES

Test Case Table


Test Cases Table 1 …….…………………………………………….…….….…....… 26

Test Cases Table 2 ……....……………………………………………..…….….…… 28

Database Table
Table 4.1: User Table …………….………………………….….……..………...…....50

Table 4.2: Admin Table ……………………………………….….…...…..…….…... 50

Table 4.3: Property Table ……………………………….….……....……….……...... 50

Table 4.4: Message Table .………………………………….….…..…..…..…..…..….50

Table 4.5: Request Table .………………...….…….…..……….……………...….…. 51

ix
LIST OF ABBREVIATIONS

CSS: Cascading Style Sheets

DFD: Data Flow Diagram

ER: Entity Relationship

HTML: Hyper Text Markup Language

IDE: Integrate Development Environment

JS: Java Script

PHP: Hypertext Preprocessor

TC ID: Test Case Id

UI: User Interface

HRS: House Rental System

x
CHAPTER 1: INTRODUCTION

1.1 Introduction
Nowadays monitoring a place or a facility is not as easy as we think. We need to inspect a
place or go for an ocular visit to find an available property. As we observed the process of
monitoring a place to rent is somewhat heavy As an IT student, we can suggest an
Automated House Rental System. This System can make a huge impact, especially in the
comfortability of monitoring one’s finding home.

1.2 Problem Statement


House Rental is a house/Apartment/home that can be used temporarily for a fee during a
specified period. The individual who needs a house must contact a rental car company and
contract out for a room/home/apartment. This system increases customer retention and
simplifies House and staff management.

1.3 Objectives
• To Transform the manual process of renting a house to an online and computerized
system
• To validate the house rental system using user feedback and testimonies
• To produce the documentation such as Software Requirement specification, Software∙
Design Description and Software Development References

1.4 Scope and Limitations


1.4.1 Scope
This project traverses a lot of areas ranging from business concepts to the computing field
and is required to perform several types of research to be able to achieve the project
objectives. The survey covers include:

• Real Estate Company: This includes a study on how the Real Estate business is
being done, the processes involved, and opportunities that exist for improvement.
• PHP Technology used for the development of the application.
• General customers as well as the company’s staff will be able to use the system
effectively.
• Web Platform means that the system will be available for access 24/7 except when
there is a temporary server issue which is expected to be minimal.

1
• Existing Systems: This involves studying the existing systems and learning their
weakness hence developing a new system to cater to the challenges the local and
world domains face when dealing with house rental issues.

1.4.2 Limitation
• Members have to visit Rental Company for buying houses.
• Online payment is not available.
• It requires internet to use it.

1.5 Report Organization


The report consists of five chapters in which all the phased of application design and
development will be covered.
Chapter 1: The chapter introduces the system and the problems, gives an overview
about the study.
Chapter 2: The second chapter covers background study and the literature review of
the project.
Chapter 3: The third chapter covers the system analysis and design phase of the
application. It explains the methodology used while developing the system.
Chapter 4: The fourth chapter discuss about the implementation and testing phase of
the application development.
Chapter 5: The last chapter that is the fifth chapter covers the conclusion,
recommendations, and future works to improve this project.

1.6 Assignment of Roles and Responsibilities


Brief profiles of each team member and their general duties follow below. Many of the
responsibilities will be shared among team members to ensure the overall success of the
project.

- Anil Diyali will be involved in interactions with the users for requirement
determinations. He will help in physical design of pages and contents. He will also
help in coding and testing of the system. He will collect the facts and figure required
for improvement of the system.

- Roshan Shrestha will mostly be involved in writing codes for the program. He will
analyses the requirements, facts and figures collected by his team member and
implement them in the system. He will design the required prototypes of the system.

2
He will implement the database into program using programming languages. He plays
main role while designing a user interface.

Both members may work on same files/tasks at the same time.

3
CHAPTER 2: LITERATURE REVIEW

2.1 Background Study


This project is designed so as to be used by House Rental Company specializing in renting
rooms to the customers. It is an online system through which customers can view available
rooms, register, view profile and enquiry house.

The main purpose of House Booking System is to produce a web-based system that allow
customer to register and reserve rooms and flat online and for the company to effectively
manage their House rental business. The advancement in Information Technology and
internet penetration has greatly enhanced various business processes and communication
between companies (services provider) and their customers of which House rental industry
is not left out. A tool through which customers can reserve available Houses online prior
to their expected pick-up date or time. A registration Portal to hold customer’s details
monitor their transaction and used same to offer better and improve service to them.

2.2 Literature Review


As our structure relies upon the useful House Renting System which is an authentic
application, we inspected the present working circumstance of the renting technique. At
present renting, organizations are dependent on manual work which consolidates packages
of work area work similarly as a human resource. [2] To date we find room Services
incredibly easy to enquiry as they have formed their structures into helpful applications
similarly as locales. Renting a house assists people to live in a comfortable house when
they do not have access to build their personal homes/houses The individual who wants to
rent a house/room/apartment/home must first contact the House rental company for the
desired House/Home/apartment. This can be done online. At this point, this person has to
supply some information such as; dates of rental, and type of house. After these details are
worked out, the individual renting the house must present a valid Identification Card.

Features
• Fixed Rates: Fixed rates provide stability for both landlords and tenants. Tenants
can budget more effectively knowing that their rent won't change during the fixed
period, and landlords have a predictable income.

• Reliable Transfers: Rental providers cannot charge a fee for giving their consent,
or refuse consent if a renter won’t pay a fee.

4
• Property List: Include details such as property type, size, location, number of
bedrooms, and amenities.

• Search and Filter Options: Enable users to search for rental properties based on
various criteria (location, price range, property type, etc.).

• Property Details: Display detailed information about each property, including


descriptions, images, floor plans, and contact information for the customers.

• Benefits for Partner: One of the benefits of a general partnership is that it is


relatively easy to set up and has lower ongoing costs than other structures.

• User Dashboard: Provide a personalized dashboard for users to manage their


listings, bookings, messages, and account settings.

• Enquiry: Enable tenants to submit rental applications or booking requests.

5
CHAPTER 3: SYSTEM ANALYSIS AND DESIGN

3.1 System Analysis


System Analysis is a detailed study of the various operations performed by a system and
their relationships within and outside of the system. Here the key question is- why all
problems exist in the present system? What must be done to solve the problem? Analysis
begins when a user or manager begins a study of the program using existing system. During
analysis, data collected on the various files, decision points and transactions handled by the
present system. The commonly used tools in the system are Data Flow Diagram etc. A good
analysis model should provide not only the mechanisms of problem understanding but also
the frame work of the solution. System analysis helps in identifying and understanding the
problems in the existing system.

Figure 3.1: Waterfall Model

6
3.1.1 Requirement Analysis
For any system, there are functional and non-functional requirements to be considered
while determining the requirements of the system. Functional requirements are product
features or functions those developers must implement to enable users to accomplish their
tasks. In addition, Non-functional Requirements (NFRs) define system attributes such as
security, reliability, performance, maintainability, scalability, and usability.

I. Functional Requirements
Only authentic user must have the access to the system.

Admin/System User:

Admin must be authenticated before accessing system the admin will be able to:

• Add/Update/Delete Property
• Add/Update/Delete Page Contents
• Check enquiry details
• View user Details
Admin will also be able to handle overall system.

Users/Customers:

Member must be authenticated before accessing system The Members will able to:

• View enquiry details


• View Own Profile Update Profile
• View Available Rooms and Houses.

7
The use case diagram, which present the system requirements are used to show how the
proposed system work in practice. The interaction between actor and use cases are also
described using use case diagram.

Figure 3.2: Use Case Diagram

II. Non-Functional Requirements


• Security: User have to register their account for enquiry. Users can login with email
and password.
• Usability: The system will be user friendly. The UI should be simple enough for
everyone to.
• Accuracy: The data stored about the rooms, booking transaction and the members
should be correct, consistent, and reliable.
• Availability: approve the booking for the duration when the admin operates and
respond to the booking requests as soon as possible.
• Maintainability: The software should be easily maintainable and adding new
house and making changes to the software must be as simple as possible.
• Portability: The software should function properly on multiple environment

8
3.1.2 Feasibility Study
A feasibility study is a detailed analysis that considers all of the critical aspects of a
proposed project in order to determine the likelihood of it succeeding. A feasibility
analysis is used to determine the viability of an idea, such as ensuring a project is legally
and technically feasible as well as economically justifiable. It tells us whether a project is
worth the investment in some cases, a project may not be doable

Feasibility studies undergo four major analysis to predict the system to be success and they
are as follows:

• Technical Feasibility
• Operational Feasibility
• Economic Feasibility
• Schedule Feasibility

I. Technical Feasibility
The system in the facts that it has been developed on windows XP platform and a high
configuration of 1GB RAM on Intel Pentium dual core processors. So, this system is
technically feasible. This study is carried out to check the technical requirements of the
system. We can strongly say that it is technically feasible, since there will not be much
difficulty in getting required resources for the development and maintaining the system.

II. Operational Feasibility


System is easy to operate with the basic knowledge of computation and internet. Well-
trained work force is not necessary. User can easily access the system, as it is user friendly
in many aspects with good UI.

III. Economic Feasibility


Development of this application is highly economically feasible. The organization need not
have to spend too much money for the development of the system. The only thing is to be
done is making an environment for the development of the system in comfortable
environment.

IV. Schedule Feasibility


Schedule feasibility is defined as the probability of a project to be completed within its
scheduled time limits, by a planned due date. If a project has a high probability to be
completed on time, then its schedule feasibility is appraised as high.

9
Figure 3.3: Gantt Chart

3.1.3 Data Modelling (ER Diagram)


This ER (Entity Relationship) diagram represents the model of this project (House Rental
System).

Figure 3.4: ER Diagram

10
3.1.4 Process Modelling (DFD)
Process modelling involves graphically representing the processes, or actions, that capture,
manipulate, store, and distribute data between a system and its environment and among
components within a system. A common form of a process model is a data-flow diagram
(DFD). A data-flow diagram is a graphic that illustrates the movement of data between
external entities and the processes and data stores within a system.

Figure 3.5: Level 1 DFD Diagram

Figure 3.6.1: Admin Level 2 DFD

11
3.2 System Design
System Design is the process of defining the element of a system such as the architecture,
modules and components, the different interfaces of the component and the data that goes
through the system. System design gives the knowledge of the requirements and analysis
to design the software product. In this chapter we will be dealing with the module, database
design, user interface design and the program design. For the designing of the application,
various diagrams like sequence diagram, activity diagram etc. have been used.

3.2.1 Architectural Design


An architectural diagram is a visual representation that maps out the physical
implementation for components of a software system.

Figure 3.8: Architecture Diagram

3.2.2 Database Schema Design


The design of database is called a schema. This tells us about the structural view of the
database. A database schema represents the logical configuration of all or part of a
relational database. A database schema indicates how the entities that make up the database
relate to one another, including tables, views, stored procedures, and more. Typically, a
database designer creates a database schema to help programmers whose software will
interact with the database.

12
Figure 3.9: Database Schema

Figure 3.9: Database Schema

13
3.2.3 Interface Design
Interface design is an important part of software development. User interface is the front-
end application view to which user interacts in order to use the software. User can
manipulate and control the software as well as hardware by means of user interface. UI
should be as simple as possible.

Figure 3.10.1: User Home Page Design

Figure 3.10.2: Admin Dashboard Design

14
Figure 3.10.3: User Register Page Design

Figure 3.10.4: User Login Page Design

Figure 3.10.5: User Update Account Page Design

15
Figure 3.10.6: User Dashboard Account Page Design

Figure 3.10.7: User Listing Account Page Design

16
Figure 3.10.8: Post Property Page Design

17
3.2.4 Software Design

I. Interface Diagram

Figure 3.11.1: Login Sequence Diagram

18
Figure 3.11.2: Admin Sequence Diagram

19
Figure 3.11.3: User Sequence Diagram

20
II. Activity Diagram
Activity diagrams are graphical representations of workflows of stepwise activities and
actions with support for choice, iteration and concurrency. Activity diagram is basically a
flowchart to represent the flow from one activity to another activity. The activity can be
described as an operation of the system.

Figure 3.12: Activity Diagram

21
CHAPTER 4: IMPLEMENTATION AND TESTING

4.1 Implementation
4.1.1 Tools Used
The various system tools that have been used in developing both the frontend and the
backend of the project are discussed in this chapter.

I. Frontend

HTML, CSS and JavaScript are used to implement frontend.

• HTML: The HyperText Markup Language or HTML is the standard markup


language for documents designed to be displayed in a web browser.
• CSS: CSS (Cascading Style Sheets) is the language we use to style an HTML
document. CSS describes how HTML elements should be displayed.
• JavaScript: JavaScript (JS) is a light-weight object-oriented programming language
which is used by several websites for scripting the webpages. It is an interpreted, full-
fledged programming language that enables dynamic interactivity on websites when
applied to an HTML document.

II. Backend and Database


The back end is implemented using PHP and MySQL database is used.

• PHP: PHP (Hypertext Preprocessor) is a server scripting language, and a powerful


tool for making dynamic and interactive Web pages. It is an open-source, interpreted,
and object- oriented scripting language that can be executed at the server-side.
• MySQL: MySQL is the most popular Open-Source Relational SQL database
management system. MySQL is one of the best RDBMS being used for developing
web-based software applications.

Also, we used other various software like Microsoft Word to create documentation, Google
meet for communication, XAMPP to implement this project on local server and Visual
Studio Code as an IDE. We used https://app.diagrams.net/ website to create different
diagrams.

22
4.1.2 Implementation Details of Modules
For developing a website, we are going to use HTML, CSS, PHP, JavaScript.
To create web pages, HTML language helps to build login forms, table, image processing,
and perform other various operation which run in browser. A web browser can read HTML
files and compose them into visible or audible web pages. The browser does not display
the HTML tags but uses them to interpret the content of the page. HTML describes the
structure of a website semantically along with cues for presentation, making it a markup
language rather than a programming language.

For Styling the html pages, CSS will assist us. CSS is a Cascading Style Sheet which is
used for making our website more presentable with the help of different selectors.
JavaScript is used in the system to modify html documents, validate forms.

For the backend we will be using PHP. In this system PHP is used for server-side web
development. Similarly, PHP is used to run SQL query to store, retrieve, and manipulate
the information contained in database. As a database we will be using MySQL which stores
the data and information of members and books. Also, it stores records of transactions in
the library.

4.2 Testing
Software Testing is the process of testing the functionality and correctness of software.
Software testing is an empirical technical investigation conducted to provide stakeholders
with information about the quality of the product to the context in which it is intended to
operate. This includes, but is not limited to, the process of executing a program or
application with the intent of finding errors.

• Whitebox Testing
White-box testing is detailed investigation of internal logic and structure of the code.
White-box testing is also called glass testing or open-box testing. In order to perform
white- box testing on an application, a tester needs to know the internal working of the
code.
• Blackbox Testing
The technique of testing without having any knowledge of the interior workings of the
application is called black-box testing. The tester is oblivious to the system
architecture and does not have access to the source code. Typically, while performing
a black-box test, a tester will interact with the system’s user

23
4.2.1 Test Cases for Unit Testing
Unit testing is a software development process in which the smallest testable parts of an
application, called units, are individually and independently scrutinized for proper
operation. This testing methodology is done during the development process by the
software developers and sometimes QA staff. The main objective of unit testing is to isolate
written code to test and determine if it works as intended.

Unit testing is an important step in the development process, because if done correctly, it
can help detect early flaws in code which may be more difficult to find in later testing
stages.

Test Cases Table 1:

TC Test Case Test Data Description Expected Actual Remarks


ID Result Result

1 Testing Email: While Successfully As Pass


Admin admin@gmail. entering logged in expected,
Login com correct and redirect result
Password: credentials to admin
admin home page
2 Testing Email: While Show As Pass
Admin admin@gmail. entering message expected,
Login com incorrect Login result
Password: credentials Failed:
admin123 Email or
Password do
not match.
3 Testing Email: While Successfully As Pass
User user@gmail.co entering logged in expected,
Login m correct and display result
Password: credentials the user
user123 profile

24
TC Test Case Test Data Description Expected Actual Remarks
ID Result Result

4 Testing Email: While Show As Pass


UserLogin user@gmail.co entering message expected,
m incorrect Login result
Password: credentials Failed:
user123 Email or
Password do
not
match.
5 On Click Logout Clicking Disable the As Pass
clicking button Logout user profile expected
logout button and user is result
button by not allowed
user to enquiry
room
6 On Click Logout Clicking Redirect to As Pass
clicking button logout button Login page expected,
logout result
button by
admin
9 Adding All required Entering all Show As Pass
new room room’s data required message: expected,
by user room details Room added result
successfully

10 Adding All required Entering Record As Pass


existing room’s data existing already expected,
room by required room exists. result
user details.

25
11 Updating Required data Editing detail Updated As Pass
existing to update should be Successfully expected,
room by updated. result

13 On Click Home Clicking Redirect to As Pass


clicking button homebutton respective expected,
home homepage result
button by
user

4.2.2 Test Cases for System Testing


System Testing includes testing of a fully integrated software system. System testing is
testing conducted on a complete integrated system to evaluate the system's compliance with
its specified requirements. All of the modules/components are linked together to see
whether the system performs as planned. This is crucial for producing high-quality output.

Test Cases Table 2:

TC Test Test Data Description Expected Actual Remarks


ID Case Result Result
1 Changing Old Filling change Show As Pass
Password password: password form. message: expected,
nipesh123 Password result
New changed
password: successfully
Nipesh111

2 For Choose the Choosing the Show As Pass


enquiry option: temporary and message: expected,
room by temporary, permanent date Equiry result
user permanent . successfully

26
4 For Click yes Clicking Yes Show As Pass
posting button Button message expected,
room in status result
enquiry field :
detail by Uploaded
admin successfully
5 For Click cancel Clicking Show As Pass
Cancelling button Cancel Button message expected,
room in status result
enquiry by field :
user Cancelled
uploading

27
CHAPTER 5: CONCLUSION AND FUTURE WORKS

5.1 Lesson Learnt / Outcome


There have been several improvements in our programming language and writing skills as
well as our time management skills while doing this project. It was difficult at the beginning
because it was our first project and everything was new. Although it is our first project it
turned out to match all the expectations. A lot was learned about proper time management
as the project had to be submitted before the deadline along with the documentation.
Although it is expectedly good, some new features to this system could be added in the
upcoming days to make it more user friendly and efficient.

5.2 Conclusion
We, the project team will design and implement a system capable of allowing users to View
house online and can be able to book houses online through ‘House Rental System’. It will
save a lot of time for Customers as they can be able to book their desired House. By House
Rental System, the project team wants users to provide easy platform for booking house
through online.

5.3 Future Recommendations


The Success of this Application depends on the number of the audiences who are willing
to use this system. Future developments will be done according to the feedback and reviews
obtained from the users of system. We intend to develop this software further and enhance
it to make it more productive. Possible future enhancement of this House Rental System
would be:

• Implement Online payment System


• Improvements on UI and other features.

28
REFERENCES

[1] B. Khan, "Room Rental System," Research Gate, p. 68, 2021.

[2] "Wikipedia," 5 8 2023. [Online]. Available: https://www.wikipedia.org/.

[3] [Online]. Available: https://phpgurukul.com/room-rental-project/.

[4] [Online]. Available: https://developer.mozilla.org/en-US/docs/Web/CSS.

[5] 13 8 2023. [Online]. Available: https://www.altexsoft.com/blog/House-rental-


reservation-system/.

[6] "House-rental-Pokhara," [Online]. Available: https://pokharaRoomrental.com/price/.

[7] [Online]. Available: https://Room.com/.

29
APPENDICES

Appendix 1: Screenshots

30
31
32
Appendix 2: Source Codes
Login page source code:

<?php
include 'connect.php';

if(isset($_POST['submit']))
{
$email= $_POST['email'];
$password= $_POST['password'];

$sql= "SELECT * from tblusers where EmailId='$email' and Password='$password' ";


$result=mysqli_query($con, $sql);
$row =mysqli_fetch_assoc($result);
if(mysqli_num_rows($result)==1)
{
session_start();
$_SESSION['EMAILID']=$row['EmailId'];
$_SESSION['USERID']==$row['user_id'];
$_SESSION['username']= $row['FullName'];
?>
<script>
location.replace("index.php");
</script>
<?php
}else{
?>
<script>
alert("Login Failed");
</script>
<?php
}
}
?>

33
<div class="overlay" onclick="closeModal()"></div>
<div class="login-form" id="loginForm">
<span onclick="closeModal()">&times;</span>
<h2>Login</h2>
<form action="" method="POST">
<div class="login-form-box">
<label for="">Email</label>
<input type="email" name="email" required>
</div>
<div class="login-form-box">
<label for="">Password</label>
<input type="password" name="password">
</div>
<button type="submit" name="submit" class="btn-login">Login</button>
<div class="dont_have_account_box">
</div>
</form>
</div>
<script>
function showModal(){
document.querySelector('.overlay').classList.add('showoverlay');
document.querySelector('.login-form').classList.add('showloginform');
}
function closeModal(){
document.querySelector('.overlay').classList.remove('showoverlay');
document.querySelector('.login-form').classList.remove('showloginform');
}
</script>

34
Home Page Source Code
<?php

include 'components/connect.php';

if(isset($_COOKIE['user_id'])){

$user_id = $_COOKIE['user_id'];

}else{

$user_id = '';

include 'components/save_send.php';

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>SAAN</title>

<!-- font awesome cdn link -->

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/6.2.0/css/all.min.css">

<!-- custom css file link -->

<link rel="stylesheet" href="css/style.css">

</head>

<body>

<?php include 'components/user_header.php'; ?>

<!-- home section starts -->

<div class="home">

35
<section class="center">

<form action="search.php" method="post">

<h3>find your perfect home</h3>

<div class="box">

<p>enter location <span>*</span></p>

<input type="text" name="h_location" required maxlength="100"


placeholder="enter city name" class="input">

</div>

<div class="flex">

<div class="box">

<p>property type <span>*</span></p>

<select name="h_type" class="input" required>

<option value="flat">flat</option>

<option value="house">house</option>

<option value="room">room</option>

</select>

</div>

<div class="box">

<p>offer type <span>*</span></p>

<select name="h_offer" class="input" required>

<option value="sale">sale</option>

<option value="resale">resale</option>

<option value="rent">rent</option>

</select>

</div>

<div class="box">

<p>maximum budget <span>*</span></p>

36
<select name="h_min" class="input" required>

<option value="5000">5k</option>

<option value="10000">10k</option>

<option value="15000">15k</option>

<option value="20000">20k</option>

<option value="30000">30k</option>

<option value="40000">40k</option>

<option value="40000">40k</option>

<option value="50000">50k</option>

<option value="100000">1 lac</option>

<option value="500000">5 lac</option>

<option value="1000000">10 lac</option>

<option value="2000000">20 lac</option>

<option value="3000000">30 lac</option>

<option value="4000000">40 lac</option>

<option value="4000000">40 lac</option>

<option value="5000000">50 lac</option>

<option value="6000000">60 lac</option>

<option value="7000000">70 lac</option>

<option value="8000000">80 lac</option>

<option value="9000000">90 lac</option>

<option value="10000000">1 Cr</option>

<option value="20000000">2 Cr</option>

<option value="30000000">3 Cr</option>

<option value="40000000">4 Cr</option>

<option value="50000000">5 Cr</option>

<option value="60000000">6 Cr</option>

<option value="70000000">7 Cr</option>

37
<option value="80000000">8 Cr</option>

<option value="90000000">9 Cr</option>

<option value="100000000">10 Cr</option>

<option value="150000000">15 Cr</option>

<option value="200000000">20 Cr</option>

</select>

</div>

<div class="box">

<p>maximum budget <span>*</span></p>

<select name="h_max" class="input" required>

<option value="5000">5k</option>

<option value="10000">10k</option>

<option value="15000">15k</option>

<option value="20000">20k</option>

<option value="30000">30k</option>

<option value="40000">40k</option>

<option value="40000">40k</option>

<option value="50000">50k</option>

<option value="100000">1 lac</option>

<option value="500000">5 lac</option>

<option value="1000000">10 lac</option>

<option value="2000000">20 lac</option>

<option value="3000000">30 lac</option>

<option value="4000000">40 lac</option>

<option value="4000000">40 lac</option>

<option value="5000000">50 lac</option>

<option value="6000000">60 lac</option>

<option value="7000000">70 lac</option>

38
<option value="8000000">80 lac</option>

<option value="9000000">90 lac</option>

<option value="10000000">1 Cr</option>

<option value="20000000">2 Cr</option>

<option value="30000000">3 Cr</option>

<option value="40000000">4 Cr</option>

<option value="50000000">5 Cr</option>

<option value="60000000">6 Cr</option>

<option value="70000000">7 Cr</option>

<option value="80000000">8 Cr</option>

<option value="90000000">9 Cr</option>

<option value="100000000">10 Cr</option>

<option value="150000000">15 Cr</option>

<option value="200000000">20 Cr</option>

</select>

</div>

</div>

<input type="submit" value="search property" name="h_search" class="btn">

</form>

</section>

</div>

<!-- home section ends -->

<!-- services section starts -->

<section class="services">

<h1 class="heading">our services</h1>

<div class="box-container">

<div class="box">

<img src="images/icon-1.png" alt="">

39
<h3>buy house</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>

<div class="box">

<img src="images/icon-2.png" alt="">

<h3>rent house</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>\

<div class="box">

<img src="images/icon-3.png" alt="">

<h3>sell house</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>

<div class="box">

<img src="images/icon-4.png" alt="">

<h3>flats and buildings</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>

<div class="box">

<img src="images/icon-5.png" alt="">

<h3>room</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>

<div class="box">

40
<img src="images/icon-6.png" alt="">

<h3>24/7 service</h3>

<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Doloremque,


incidunt.</p>

</div>

</div>

</section>

<!-- services section ends -->

<!-- listings section starts -->

<section class="listings">

<h1 class="heading">latest listings</h1>

<div class="box-container">

<?php

$total_images = 0;

$select_properties = $conn->prepare("SELECT * FROM `property` ORDER BY


date DESC LIMIT 6");

$select_properties->execute();

if($select_properties->rowCount() > 0){

while($fetch_property = $select_properties->fetch(PDO::FETCH_ASSOC)){

$select_user = $conn->prepare("SELECT * FROM `users` WHERE id = ?");

$select_user->execute([$fetch_property['user_id']]);

$fetch_user = $select_user->fetch(PDO::FETCH_ASSOC);

if(!empty($fetch_property['image_02'])){

$image_coutn_02 = 1;

}else{

$image_coutn_02 = 0;

41
if(!empty($fetch_property['image_03'])){

$image_coutn_03 = 1;

}else{

$image_coutn_03 = 0;

if(!empty($fetch_property['image_04'])){

$image_coutn_04 = 1;

}else{

$image_coutn_04 = 0;

if(!empty($fetch_property['image_05'])){

$image_coutn_05 = 1;

}else{

$image_coutn_05 = 0;

$total_images = (1 + $image_coutn_02 + $image_coutn_03 + $image_coutn_04 +


$image_coutn_05);

$select_saved = $conn->prepare("SELECT * FROM `saved` WHERE property_id


= ? and user_id = ?");

$select_saved->execute([$fetch_property['id'], $user_id]);

?>

<form action="" method="POST">

<div class="box">

<input type="hidden" name="property_id" value="<?= $fetch_property['id']; ?>">

<?php

if($select_saved->rowCount() > 0){

?>

42
<button type="submit" name="save" class="save"><i class="fas fa-
heart"></i><span>saved</span></button>

<?php

}else{

?>

<button type="submit" name="save" class="save"><i class="far fa-


heart"></i><span>save</span></button>

<?php

?>

<div class="thumb">

<p class="total-images"><i class="far fa-image"></i><span><?=


$total_images; ?></span></p>

<img src="uploaded_files/<?= $fetch_property['image_01']; ?>" alt="">

</div>

<div class="admin">

<h3><?= substr($fetch_user['name'], 0, 1); ?></h3>

<div>

<p><?= $fetch_user['name']; ?></p>

<span><?= $fetch_property['date']; ?></span>

</div>

</div>

</div>

<div class="box">

<div class="price"><i class="fas fa-indian-rupee-sign"></i><span><?=


$fetch_property['price']; ?></span></div>

<h3 class="name"><?= $fetch_property['property_name']; ?></h3>

<p class="location"><i class="fas fa-map-marker-alt"></i><span><?=


$fetch_property['address']; ?></span></p>

43
<div class="flex">

<p><i class="fas fa-house"></i><span><?= $fetch_property['type'];


?></span></p>

<p><i class="fas fa-tag"></i><span><?= $fetch_property['offer'];


?></span></p>

<p><i class="fas fa-bed"></i><span><?= $fetch_property['bhk']; ?>


BHK</span></p>

<p><i class="fas fa-trowel"></i><span><?= $fetch_property['status'];


?></span></p>

<p><i class="fas fa-couch"></i><span><?= $fetch_property['furnished'];


?></span></p>

<p><i class="fas fa-maximize"></i><span><?= $fetch_property['carpet'];


?>sqft</span></p>

</div>

<div class="flex-btn">

<a href="view_property.php?get_id=<?= $fetch_property['id']; ?>"


class="btn">view property</a>

<input type="submit" value="send enquiry" name="send" class="btn">

</div>

</div>

</form>

<?php

}else{

echo '<p class="empty">no properties added yet! <a href="post_property.php"


style="margin-top:1.5rem;" class="btn">add new</a></p>';

?>

44
</div>

<div style="margin-top: 2rem; text-align:center;">

<a href="listings.php" class="inline-btn">view all</a>

</div>

</section>

<!-- listings section ends -->

<script
src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script>

<?php include 'components/footer.php'; ?>

<!-- custom js file link -->

<script src="js/script.js"></script>

<?php include 'components/message.php'; ?>

<script>

let range = document.querySelector("#range");

range.oninput = () =>{

document.querySelector('#output').innerHTML = range.value;

</script>

</body>

</html>

Manage Booking Page Source Code:


<?php

include 'components/connect.php';

if(isset($_COOKIE['user_id'])){

$user_id = $_COOKIE['user_id'];

}else{

$user_id = '';

45
}

if(isset($_POST['submit'])){

$email = $_POST['email'];

$email = filter_var($email, FILTER_SANITIZE_STRING);

$pass = sha1($_POST['pass']);

$pass = filter_var($pass, FILTER_SANITIZE_STRING);

$select_users = $conn->prepare("SELECT * FROM `users` WHERE email = ? AND password


= ? LIMIT 1");

$select_users->execute([$email, $pass]);

$row = $select_users->fetch(PDO::FETCH_ASSOC);

if($select_users->rowCount() > 0){

setcookie('user_id', $row['id'], time() + 60*60*24*30, '/');

header('location:home.php');

}else{

$warning_msg[] = 'Incorrect username or password!';

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Login</title>

<!-- font awesome cdn link -->

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/6.2.0/css/all.min.css">

<!-- custom css file link -->

46
<link rel="stylesheet" href="css/style.css">

</head>

<body>

<?php include 'components/user_header.php'; ?>

<!-- login section starts -->

<section class="form-container">

<form action="" method="post">

<h3>welcome back!</h3>

<input type="email" name="email" required maxlength="50" placeholder="enter your email"


class="box">

<input type="password" name="pass" required maxlength="20" placeholder="enter your


password" class="box">

<p>don't have an account? <a href="register.html">register new</a></p>

<input type="submit" value="login now" name="submit" class="btn">

</form>

</section>

<!-- login section ends -->

<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script>

<?php include 'components/footer.php'; ?>

<!-- custom js file link -->

<script src="js/script.js"></script>

<?php include 'components/message.php'; ?>

</body>

</html>

47
Appendix 3: Database Table Screenshots

Table 4.1: User Table

Table 4.2: Admin Table

Table 4.3: Property Table

Table 4.4: Message Table

48
Table 4.5: Request Table

49

You might also like