You are on page 1of 99

A Project Report on

Online Banking System


Submitted in partial fulfilment of the requirements for the award
of the degree of

B.Sc. (Hons.) Computer Application

By:

Examination Roll Number Name of Student


20VBCA044471 Md Amir
20VBCA044472 Himashu Sah
20VBCA044492 Mukesh Kumar
20VBCA044462 Ashish kujur
20VBCA044485 Joy Xalxo

Department of Computer Science St.


Xavier’s College, Ranchi
2023

1
INDEX
Sl. No Chapter Page
1 Synopsis 3
2 Acknowledgement 5
3 Declaration by Candidate 10
4 Certificate of Originality 15
5 Introduction 20
6 User Classes 21
7 Technology Used 22
8 Purpose Of The System 27
9 Scope Of The Proposed System 28
10 User Objective 29
11 System Design 31
12 Security 34
13 Diagrams 36
14 Screenshots 38
15 Future scope 98
16 Conclusion 99

SYNOPSIS
Title of the Project

2
Online Banking System

Objective of the Project


The main objective of the Project on Online Banking System is to
manage the details of Accounts, Bank, Customer, Transaction,
Internet Banking. It manages all the information about Accounts,
Balance, Internet Banking, Accounts. The project is totally built at
administrative end and thus only the administrator is guaranteed the
access. The purpose of the project is to build an application program
to reduce the manual work for managing the Accounts, Bank,
Balance, Customer. It tracks all the details about the Customer,
Transaction, Internet Banking.
Project Category
 Website

HTML, CSS, PHP

The entirety of this project is divided into two sub sections mainly
Frontend and Backend. Frontend is part of any website which is
visible to the end users (those who are going to visit our website),
which is further divided into HTML and CSS.

HTML specifically stands for Hypertext Markup Language which is


considered mere backbone, that is, provides a working structure to
any website.
Then, CSS stands for Cascading Style Sheet which is often referred to
as styling component of any website which provides a great look and
feel to a website. With various attributes and properties, the entire
discussion is beyond the scope of this project.

PHP, amongst various other backend languages, has been used in our
project. It is used to provide the functional logic of our website.

3
Software requirements

• Front End o Hypertext Markup


Language (HTML) o Cascading Style
Sheet (CSS)

• Back End o PHP: Hypertext Pre-


processor (PHP)

• Database o MySQL Database (MariaDB)

 Hosting and Domain o


Localhost

 Web Browser o Any web browser capable of sending and


receiving HTTPS requests. (Ex. Google Chrome, Internet
Explorer)

Hardware requirements

• A stable internet connection (for loading assets such as


images)
• At least 100MB storage
• At least 1GB RAM
• A functional output device (Monitors)
• A functional input device (Mouse and Keyboard)

4
ACKNOWLEDGEMENT

I, Md Amir, would like to express my sincere gratitude to Mr. Ritesh Kumar


for his support, valuable time, and guidance. This report would not have
been possible without his motivation and contribution.

Also, I would like to thank Dr. Swarat Chaudhari for providing great
facilities and environment, and also for giving us such a wonderful
opportunity to enhance our skills and knowledge.

Finally, I would also like to thank my parents and friends who helped me a
lot in finalizing this project within the limited time frame.

Md Amir
20VBCA044471

5
ACKNOWLEDGEMENT

I, Himashu Sah, would like to express my sincere gratitude to Mr. Ritesh


Kumar for his support, valuable time, and guidance. This report would not
have been possible without his motivation and contribution.

Also, I would like to thank Dr. Swarat Chaudhari for providing great
facilities and environment, and also for giving us such a wonderful
opportunity to enhance our skills and knowledge.

Finally, I would also like to thank my parents and friends who helped me a
lot in finalizing this project within the limited time frame.

Himashu Sah
20VBCA044472

6
ACKNOWLEDGEMENT

I, Mukesh Kumar, would like to express my sincere gratitude to Mr. Ritesh


Kumar for his support, valuable time, and guidance. This report would not
have been possible without his motivation and contribution.

Also, I would like to thank Dr. Swarat Chaudhari for providing great
facilities and environment, and also for giving us such a wonderful
opportunity to enhance our skills and knowledge.

Finally, I would also like to thank my parents and friends who helped me a
lot in finalizing this project within the limited time frame.

Mukesh Kumar
20VBCA044492

7
ACKNOWLEDGEMENT

I, Ashish Kujur, would like to express my sincere gratitude to Mr. Ritesh


Kumar for his support, valuable time, and guidance. This report would
not have been possible without his motivation and contribution.

Also, I would like to thank Dr. Swarat Chaudhari for providing great
facilities and environment, and also for giving us such a wonderful
opportunity to enhance our skills and knowledge.

Finally, I would also like to thank my parents and friends who helped me a
lot in finalizing this project within the limited time frame.

Ashish Kujur
20VBCA044462

8
ACKNOWLEDGEMENT

I, Joy Xalxo, would like to express my sincere gratitude to Mr. Ritesh


Kumar for his support, valuable time, and guidance. This report would not
have been possible without his motivation and contribution.

Also, I would like to thank Dr. Swarat Chaudhari for providing great
facilities and environment, and also for giving us such a wonderful
opportunity to enhance our skills and knowledge.

Finally, I would also like to thank my parents and friends who helped me a
lot in finalizing this project within the limited time frame.

Joy Xalxo
20VBCA044485

9
DECLARATION BY CANDIDATE

I the undersigned declare that the project report entitled “Online Banking
System” is based on my work carried out during my internship under the
supervision of Mr. Ritesh Kumar.

This project work has been submitted for partial fulfilment of the
requirement of the degree of B.Sc. (Hons.) Computer Application for the
session 2020 – 2023. The work done in the report is original and has been
done by me under the general supervision of my supervisor.

Md Amir
20VBCA044471

10
DECLARATION BY CANDIDATE

I the undersigned declare that the project report entitled “Online Banking
System” is based on my work carried out during my internship under the
supervision of Mr. Ritesh Kumar.

This project work has been submitted for partial fulfilment of the
requirement of the degree of B.Sc. (Hons.) Computer Application for the
session 2020 – 2023. The work done in the report is original and has been
done by me under the general supervision of my supervisor.

Himashu Sah
20VBCA044472

11
DECLARATION BY CANDIDATE

I the undersigned declare that the project report entitled “Online Banking
System” is based on my work carried out during my internship under the
supervision of Mr. Ritesh Kumar.

This project work has been submitted for partial fulfilment of the
requirement of the degree of B.Sc. (Hons.) Computer Application for the
session 2020 – 2023. The work done in the report is original and has been
done by me under the general supervision of my supervisor.

Mukesh Kumar
20VBCA044492

12
DECLARATION BY CANDIDATE

I the undersigned declare that the project report entitled “Online Banking
System” is based on my work carried out during my internship under the
supervision of Mr. Ritesh Kumar.

This project work has been submitted for partial fulfilment of the
requirement of the degree of B.Sc. (Hons.) Computer Application for the
session 2020 – 2023. The work done in the report is original and has been
done by me under the general supervision of my supervisor.

Ashish Kujur
20VBCA044462

13
DECLARATION BY CANDIDATE

I the undersigned declare that the project report entitled “Online Banking
System” is based on my work carried out during my internship under the
supervision of Mr. Ritesh Kumar.

This project work has been submitted for partial fulfilment of the
requirement of the degree of B.Sc. (Hons.) Computer Application for the
session 2020 – 2023. The work done in the report is original and has been
done by me under the general supervision of my supervisor.

Joy Xalxo
20VBCA044485

14
CERTIFICATE OF ORIGINALITY

The Project Report entitled “Online Banking System”, is hereby approved


as a creditable work and has been presented nicely to meet its
acceptance as a prerequisite to the degree for which it has been
submitted.

It is understood that by this approval, the undersigned does not


necessarily endorse any conclusion drawn or opinion expressed therein,
but approves the Project Report for the purpose for which it is submitted.

Md Amir Mr. Ritesh Kumar


Department of Computer Science
St. Xavier’s College, Ranchi

(Internal Examiner) (External Examiner)

(Dr. Swarat Chaudhari)


Head of the Department
Department of Computer Science
St. Xavier’s College, Ranchi

15
CERTIFICATE OF ORIGINALITY

The Project Report entitled “Online Banking System”, is hereby approved


as a creditable work and has been presented nicely to meet its
acceptance as a prerequisite to the degree for which it has been
submitted.

It is understood that by this approval, the undersigned does not


necessarily endorse any conclusion drawn or opinion expressed therein,
but approves the Project Report for the purpose for which it is submitted.

Himanshu Sah Mr. Ritesh Kumar


Department of Computer Science
St. Xavier’s College, Ranchi

(Internal Examiner) (External Examiner)

(Dr. Swarat Chaudhari)


Head of the Department
Department of Computer Science
St. Xavier’s College, Ranchi

16
CERTIFICATE OF ORIGINALITY

The Project Report entitled “Online Banking System”, is hereby approved


as a creditable work and has been presented nicely to meet its
acceptance as a prerequisite to the degree for which it has been
submitted.

It is understood that by this approval, the undersigned does not


necessarily endorse any conclusion drawn or opinion expressed therein,
but approves the Project Report for the purpose for which it is submitted.

Mukesh Kumar Mr. Ritesh Kumar


Department of Computer Science
St. Xavier’s College, Ranchi

(Internal Examiner) (External Examiner)

(Dr. Swarat Chaudhari)


Head of the Department
Department of Computer Science
St. Xavier’s College, Ranchi

17
CERTIFICATE OF ORIGINALITY

The Project Report entitled “Online Banking System”, is hereby approved


as a creditable work and has been presented nicely to meet its
acceptance as a prerequisite to the degree for which it has been
submitted.

It is understood that by this approval, the undersigned does not


necessarily endorse any conclusion drawn or opinion expressed therein,
but approves the Project Report for the purpose for which it is submitted.

Ashish Kujur Mr. Ritesh Kumar


Department of Computer Science
St. Xavier’s College, Ranchi

(Internal Examiner) (External Examiner)

(Dr. Swarat Chaudhari)


Head of the Department
Department of Computer Science
St. Xavier’s College, Ranchi

18
CERTIFICATE OF ORIGINALITY

The Project Report entitled “Online Banking System”, is hereby approved


as a creditable work and has been presented nicely to meet its
acceptance as a prerequisite to the degree for which it has been
submitted.

It is understood that by this approval, the undersigned does not


necessarily endorse any conclusion drawn or opinion expressed therein,
but approves the Project Report for the purpose for which it is submitted.

Joy Xalxo Mr. Ritesh Kumar


Department of Computer Science
St. Xavier’s College, Ranchi

(Internal Examiner) (External Examiner)

(Dr. Swarat Chaudhari)


Head of the Department
Department of Computer Science
St. Xavier’s College, Ranchi

19
INTRODUCTION
The "Online Banking System" has been developed to override the
problems prevailing in the practicing manual system. This software is
supported to eliminate and in some cases reduce the hardships faced
by this existing system. Moreover this system is designed for the
particular need of the company to carry out operations in a smooth
and effective manner.

The application is reduced as much as possible to avoid errors while


entering the data. It also provides error message while entering
invalid data. No formal knowledge is needed for the user to use this
system. Thus by this all it proves it is user-friendly. Online Banking
System , as described above, can lead to error free, secure, reliable
and fast management system. It can assist the user to concentrate
on their other activities rather to concentrate on the record keeping.
Thus it will help organization in better utilization of resources.

Every organization, whether big or small, has challenges to overcome


and the information of Bank, Accounts, Transaction, Balance,
Internet Banking. Every Online Banking System has different
Accounts needs, therefore we design exclusive employee
management systems that are adapted to your managerial
requirements. This is designed to assist in strategic planning, and will
help you ensure that your organisation Is equipped with the right
level of information and details for your future goals. Also, for those
busy executive who are always on the go, our systems come with
remote access features, which will allow you to manage your
workforce anytime, at all times. These systems will ultimately allow
you to better manage resources.

20
USER CLASSES

Due to the fairly limited scope of this project, it has the following
user classes –

End Users– (or more specifically the general public). This class
focuses more those who are actually going to use the web
application. They are restricted (but not limited) to casting their
votes, viewing polling results when the results are declared and they
can also download their voting certificates if required.

Database Administrators - This class pertains to those people who


work on the logical and structural aspects of this project. A database
administrator is one who is responsible for defining the structure of
any database, the tables employed in it (also called relations),
datatypes of each of its columns, integrity constraints such as
primary keys, default values etc. This project uses one database and
a single table to store tabular data.

Software Developers – The next and last user class of this project
focuses more on the maintenance aspect of the system. These users
(programmers) will be responsible for making necessary (or
demanded) changes in the web application if needs be in the future.

The entire set of tools required to modify/ rectify the website can be
accessed by these users including source code, available political
parties, the required libraries employed in making this project. Here,
source code refers to all the lines written (and understood) by
contributors of this project and, finding bugs, scope of improvement
of this project is the sole responsibility of developers and fellow
contributors (if any).

21
TECHNOLOGY USED
Overall Concept
The entirety of this project is based on Web Development, the details
of which are as under:

HTML

HTML, CSS, and JavaScript were used in building the frontend design
of the static website. The HyperText Markup Language or HTML is
the standard markup language for documents designed to be
displayed in a web browser. It can be assisted by technologies such
as Cascading Style Sheets (CSS) and scripting languages such as
JavaScript.

Web browsers receive HTML documents from a web server or from


local storage and render the documents into multimedia web pages.
HTML describes the structure of a web page semantically and
originally included cues for the appearance of the document.

HTML elements are the building blocks of HTML pages. With HTML
constructs, images and other objects such as interactive forms may
be embedded into the rendered page. HTML provides a means to
create structured documents by denoting structural semantics for
text such as headings, paragraphs, lists, links, quotes, and other
items. HTML elements are delineated by tags, written using angle
brackets. Tags such as <img/> and <input/> directly introduce
content into the page. Other tags such as <p> surround and provide
information about document text and may include other tags as sub-
elements. Browsers do not display the HTML tags but use them to
interpret the content of the page.

HTML can embed programs written in a scripting language such as


JavaScript, which affects the behaviour and content of web pages.

22
The inclusion of CSS defines the look and layout of content. The
World Wide Web Consortium (W3C), the former maintainer of the
HTML and current maintainer of the CSS standards, has encouraged
the use of CSS over explicit presentational HTML since 1997.

CSS (Cascading Style Sheet)

Cascading Style Sheets (CSS) is a style sheet language used for


describing the presentation of a document written in a markup
language such as HTML. CSS is a cornerstone technology of the
World Wide Web, alongside HTML and JavaScript.

CSS is designed to enable the separation of presentation and


content, including layout, colours, and fonts. This separation can
improve content accessibility, provide more flexibility and control in
the specification of presentation characteristics, enable multiple web
pages to share formatting by specifying the relevant CSS in a
separate .css file which reduces complexity and repetition in the
structural content as well as enabling the .css file to be cached to
improve the page load speed between the pages that share the file
and its formatting.

Separation of formatting and content also makes it feasible to


present the same markup page in different styles for different
rendering methods, such as on-screen, in print, by voice (via speech-
based browser or screen reader), and on Braille-based tactile
devices. CSS also has rules for alternate formatting if the content is
accessed on a mobile device.

JavaScript (Part of the stack but not used in our project)

JavaScript often abbreviated as JS, is a programming language that


conforms to the ECMAScript specification. JavaScript is high-level,
often just-in-time compiled, and multi-paradigm. It has curly-bracket

23
syntax, dynamic typing, prototype-based object orientation, and
firstclass functions.

Alongside HTML and CSS, JavaScript is one of the core technologies


of the World Wide Web. Over 97% of websites use their client-side
for web page behaviour, often incorporating third-party libraries. All
major web browsers have a dedicated JavaScript engine to execute
the code on the user's device.

As a multi-paradigm language, JavaScript supports event-driven,


functional, and imperative programming styles. It has application
programming interfaces (APIs) for working with text, dates, regular
expressions, standard data structures, and the Document Object
Model (DOM).

PHP (Hypertext Pre-processor)

For the backend and logical part of our project, we have used PHP
language, the details of which are as follows:

PHP is an open-source server-side scripting language that many


developers use for web development. It is also a general-purpose
language that you can use to make lots of projects, including
Graphical User Interfaces (GUIs). The abbreviation PHP initially stood
for Personal Homepage. But now it is a recursive acronym for
Hypertext Pre-processor. The first version of PHP was launched 26
years ago. Now it's on version 8, initially released in November 2020.

PHP is mostly used for making web servers. It runs on the browser
and is also capable of running in the command line. So, if you don't
feel like showing your code output in the browser, you can show it in
the terminal.

PHP has many advantages that have made it so popular. Some of


them are:

24
• PHP is platform-independent. You don't have to have a particular
OS to use it because it runs on every platform, whether it's Mac,
Windows, or Linux.

• PHP is open source. The original code is made available to


everyone who wants to build upon it. This is one of the reasons
why one of its frameworks, Laravel, is so popular.

• You can easily connect PHP to all Databases, relational and


nonrelational. So, it can connect in no time to MySQL, MongoDB,
or any other database.

• PHP has a very supportive online community. The official


documentation provides guides on how to use the features and
you can easily get your problem fixed while stuck.

MySQL for Database

MySQL is an open-source relational database management system.


As with other relational databases, MySQL stores data in tables made
up of rows and columns. Users can define, manipulate, control, and
query data using Structured Query Language, more commonly
known as SQL.

MySQL is one of the most recognizable technologies in the modern


big data ecosystem. Often called the most popular database and
currently enjoying widespread, effective use regardless of industry,
it’s clear that anyone involved with enterprise data or general IT
should at least aim for a basic familiarity of MySQL .

Structured Query Language (SQL) is further subdivided into four


different command types which are as follows:

25
• DQL: The data query language (DQL) is the most familiar and is
used to run queries on databases and extract information from
stored data. For example, selecting and returning the maximum
value in a column.

• DDL: A data definition language (DDL) is used to codify a


database’s particular structures and schemas. Creating a table
or defining data types is an example.

• DCL: A data control language (DCL) defines access,


authorizations, and permissions for users and processes
accessing the database, including granting administrator
privileges, or restricting users to read-only privileges only.

• DML: And finally, a data manipulation language (DML) is used


to make modifications on existing components of a database,
like inserting records, updating values in cells, or deleting data.

26
PURPOSE OF THE SYSTEM
1. SECURITY: There is a lot of security of data on this content
management system. One cannot open our system without knowing
the password. Immediately after opening login screen will appear on
screen. Only after entering the correct username and password user
can operate our system.

2. REFERENTIAL INTEGRITY: User cannot change the date in the


transaction files. Addition of data can be done only on the master files
date in transaction files cannot be entered until addition is done on
the master files.

3. EASY RETRIEVAL OF DATA: Data is retrieved easily and quick using


sql commands. On line commands are used to retrieve huge amount
of data.

4. GENERATION OF AUTOMATIC VALUES: In project in some screen


some fields generated automatically like Profile detail,
Account number, etc.

SCOPE OF THE PROPOSED SYSTEM


27
Though there are many online systems available on internet but this
can compete with them with some advancement in its functionality
and can be used by any bank organization to maintain their
customer's account and online transaction process.

The basic functionalities of the system are:

• Create Account

• Login

• Update Profile

• Password Recovery

• View Profile

⚫ Amount Transaction

⚫ Delete account

⚫  Logout

User objectives

28
CREATE ACCOUNT

This module is used by the user to create a new account to join


services of online banking. The user is required to fill in a few details
and is automatically assigned as an user at the end of process.

LOGIN

This module is used by all the users to log into the account. The user is
required enter his/her user name and password. After login user will
be redirected to the user's home page.

UPDATE PROFILE

Update profile module will be used to update or change any detail of


user such as address, phone number, city, state, etc.

PASSWORD RECOVERY

This module is used to recover the lost password by the user


by entering his/her valid email address. This email address will
be matched from database and automatically generated email
will be sent to the user containing his/her user name and
password.

VIEW PROFILE

29
This module is the automatically generated page when user
clicks the view profile button. This contain the user account
detail such as name, account balance, email id, address, city.

AMOUNT TRANSACTION

This module is the user view page after login where he/she
can transfer the amount to other account by providing the
amount to be transferred and the account number where to
be transferred.

CONTACT FORM

This module is used by both registered and non-registered


user to contact bank or to give any feedback trough message.
His/her message will be saved into the database and further
bank can contact him/her.

DELETE ACCOUNT

This module is used to delete the user's account by the


confirmation of user.

LOGOUT

This module is used to logout from the user's session and


redirected to the home page of website.
System Design

30
Scope

Though there are many online systems available on internet


but this can compete with them with some advancement in its
functionality and can be used by any bank organization to
maintain their customer's account and online transaction
process.

The basic functionalities of the system are:

 Create Account

 Login Update Profile

 Password Recovery

 View Profile

 Amount Transaction

 Delete account

 Logout

Database design

31
Database design is required to manage the large bodies of
information. The management of data involves both the
definition of structure of the storage of information and
provisions of mechanism for the manipulation of information.
in addition to the database system must provide for the safety
of information handled, despite the system crashes
due to attempts art unauthorized access. for developing an
efficient data base, we will have to full fill certain condition
such as:

 Control Redundancy

 Ease of use

 Accuracy and integrity

 Avoiding inordinate delays

 Recovery from failure

 Privacy and security

 Performance

There are 6 major steps in design process. The first 5 steps are
usually done on paper and finally the design is implemented.

 Identify the tables and relationship

32
 Identify the data that is needed for each table and
relationship

 Resolve the relationship

 Verify the design

 Implement the design

SECURITY

33
Description

Event management is the application of project management to the


creation and development of festivals, events,extra vagenga and
conferences.
Event management involves studying the intricacies of the brand,
identifying the target audience, devising the event concept, planning
the logistics and coordinating the technical aspects before actually
executing the modalities of the proposed event. Post-event analysis
and ensuring a return on investment have become significant drivers
for the event industry.
The recent growth of festivals and events as an industry around the
world means that the management can no longer be ad hoc. Events
and festivals, such as the Asian Games, have a large impact on their
communities and, in some cases, the whole country.
The industry now includes events of all sizes from the Olympics down
to a breakfast meeting for ten business people. Many industries,
charitable organization and interest groups will hold events of some
size in order to market themselves, build business relationships, raise
money or celebrate.

Technical issues

Software companies service event planners with a complete Tool,


Hotel Booking Tool,
Travel Booking Tool, Budgeting Tool etc. As far as the technical issues
related to this project from security point of view, there is no chance
of steal the data until either we want or if there is any problem in the
coding section.
Cost and schedule

34
Merely we think of the cost estimation on the basis of the
following points:

Static IP for WEB ------ null

Paper work & reports ------- Rs.400

Labour costs ------ null

Other expenses ------- Rs. 50

Now looking at the time limit of 15 days and working for 2 hours and
work to do we can divide our work in following parts and complete it.

Risk

Risk is the term applied to a logical and semantic method of


establishing the context, identifying, analyzing, evaluating, treating,
monitoring and communicating risks associated with any activity,
function or process in a way that will enable organizations to
maximize losses and minimize opportunities.

DFD DIAGRAM

35
Account Verification
Customer Info Account Customer List
Opening

Account DB
Add Custo
Add Beneficiary Beneficiary

Account Balance DB Beneficiary info

Fund Trans DB

Update

Account Status Balance

Transaction Detail
Fund
Transfer

Fund Transfer Transaction report


Customer Employee

Debit Card DB

Request For Debit Card Issue Debit Issue Debit Card

Deliver Debit Card


ER DIAGRAM
Card

Cus_Address Cus_Name
36
Staff_ID Staff_Name

Cus_ID
Cus_Mobile

Process Manage by
Process
Gender

DOB

Staff_Mobile
Cus_Email

Account_Account
Login Create

Username
Payment_Type
Account_ID
Payment_Amount
Payment_id

Account Make Account

Biller_Amount
Secure_Word
Password
Biller_Name Make
Amount
Trans_Limit
Transaction_Type

Transaction
Receiver_Name
Transaction_ID
SCREENSHOTS
Date Receiver_Account

37
Visual (Frontend)

38
39
40
41
42
43
44
Source Code (Backend)

header.php

<link rel="stylesheet" type="text/css" href="css/header.css">


<div class="header_main">
<div class="navBar">
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="index.php#aboutus">About
Us</a></li>
<li><a href="index.php#contactus">Contact Us</a></li>
<li><a href="staff_login.php">Staff Login</a></li>

45
</ul>
</div>
<a href="index.php"><div class="logo-name">
<div class="logo">
<img class="logo_img" src="img/chase1.jpg" width="90px"
height= "90px">
</div>

<div class="name">
<h5> Online Banking</h5></a><br>
</div>
</div>

<div class="dif_banking">
<div class="retail_banking">
<a href="customer_reg_form.php">Open
Account</a><br>
</div>
<div class="corporate_banking">
<a href="debit_card_form.php">Apply Debit
Card</a><br>
</div>
<div class="international_banking">
<a href="customer_login.php">Login</a><br>
</div>
<div class="international_banking">
<a href="ebanking_reg_form.php">Register</a><br>
</div>
<div class="bank_servic">
<a href="fund_transfer.php">Fund Transfer</a><br>
</div>
</div>

46
</div>

index.php

<html>
<title>Online Banking System</title>
<head>
<link rel="stylesheet" type="text/css" href="css/index.css">
<link rel="shortcut icon" href="img/chase1.jpg">
</head>
<style>
body{
background-color: grey;
}
</style>
</body>
<?php include'header.php'?>
<div class="index_container">
<div class="slider">
<div class="slideimg">

47
<img src="img/11.png" width="300px" height= "700px">
<img src="img/2.png " width="300px" height= "700px" >
<img src="img/3.png " width="300px" height= "700px">
<img src="img/4.png " width="300px" height= "700px">
<img src="img/5.png " width="300px" height= "700px">
</div>
</div><br>
<div class="newsroom">

<marquee class="marquee_news" scrolldelay="20"><p


class="newsfeed"><span>Our bank may charge you for opening a bank
account.
</span><span>we cuts deposit rates, PPF to fetch lower interest
rate. </span><span>No, it is not mandatory to link your bank account
with CITIZENSHIP card</span></p></marquee>
</div><br><br>

<div class="news_events">
<h2>Tips</h2><br>
<ul><br>
<p><ul><br>
<li>Don't access your bank accounts on public Wi-Fi</li>
<li>Avoid saving your login information</li>
<li>Use strong passwords and change them often</li>
<li>Use two-factor authentication whenever possible</li>
<li>Keep your computer updated
</li></ul>
</p><br>
<br>
</ul><br>
<img class="image" src="img/12.jpg" width ="1100" height="300">
</div>

48
<div id="boutus" class="about"><span>A</span>bout
<span>U</span>s<br><br>
<p>Our Bank’s mission is to be a world class Indian bank. We have a
two-fold objective: first, to be the preferred provider of banking services
for target retail and wholesale customer segments. The second objective
is to achieve healthy growth in profitability, consistent with the bank’s
risk appetite.

The bank is committed to maintaining the highest level of ethical


standards, professional integrity, corporate governance and regulatory
compliance. Our Bank’s business philosophy is based on five core values:
Operational Excellence, Customer Focus, Product Leadership, People
and Sustainability.</p>
</p></div>

<div class="disclaimer">
<span>Disclaimer !!</spasn><br><br>
<p>Our bank does not ask for the details of your
account/PIN/password. Therefore any one pretending to be asking you
for information from the bank/technical team may be fraudulent
entities, so please beware.</p>
<p>You should know how to operate net transactions and if you are
not familiar you may refrain from doing so. You may seek bank's
guidance in this regard. Bank is not responsible for online transactions
going wrong.</p>
<p>We shall also not be responsible for wrong transactions and
wanton disclosure of details by you. Viewing option and transaction

49
option on the net are different. You may exercise your option
diligently.</p>
</div>

</div>

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


</body>
</html>

footer.php

<link rel="stylesheet" type="text/css" href="css/footer.css">


<footer>
<div class="container">
<div class="follow_us">
<label>Follow Us</label>
<ul>
<li><a href="https://www.facebook.com/">Facebook</a></li>
<li><a href="https://twitter.com/">Twitter</a></li>
<li><a href="https://www.instagram.com/">Instagram</a></li>

</ul>
</div>
<div class="contact" id="contactus">
<label>Contact Us</label>
<ul>
<p>St. Xavier's College,</p><p>Ranchi, 834001</p>
<p>Tel : 91-2756-0199</p>
<p> Email: contactus@gmail.com</p>

</ul>

50
</div>

</div>
<div class="copyright">
<span>Copyright &copy; 2020-23 Online Banking System. All rights
reserved.</span>
</div>

</footer>
db_connect.php

<?php
$servername = "localhost";
$username = "root";
$password = "";
$database = "bnkms";

$conn = new mysqli($servername, $username, $password, $database);

if ($conn->connect_error) {
header('location:server_down.php');
}

?>

51
customer_reg_form.php

<?php ob_start() ?>

<html>
<head>
<title>Registration Form</title>
<link rel="stylesheet" type="text/css"
href="css/customer_reg_form.css"/>

<?php include'header.php'; ?>


</head>
<style>
body{
background-color: grey;
}
</style>
</body>

52
<body>
<div class="container_regfrm_container_parent">
<h3>Online Account Opening Form</h3>
<div class="container_regfrm_container_parent_child">
<form method="post">
<input type="text" name="name"
placeholder="Name" required />
<select name ="gender" required >
<option class="default" value="" disabled
selected>Gender</option>
<option value="Male" required
>Male</option>
<option value="Female">Female</option>
<option value="Others">Others</option>
</select>
<input type="text" name="mobile"
placeholder="Mobile no" required />
<input type="text" name="email"
placeholder="Email id" />
<input type="text" name="landline"
placeholder="Landline no" />
<input type="text" name="dob"
placeholder="Date of Birth" onfocus="(this.type='date')" required />
<input type="text" name="pan_no"
placeholder="PAN Number" required />

53
<input type="text" name="citizenship"
placeholder="Citizenship Number" required />
<input class="address" type="text"
name="homeaddrs" placeholder="Home Address" required />
<input class="address" type="text"
name="officeaddrs" placeholder="Office Address" />
<input type="text" name="country"
placeholder="US" value="US" readonly="readonly" />

<select name ="state" required >


<option class="default" value="" disabled
selected>State</option>

<option
value="California">California</option>
<option value="Texas">Texas</option>
<option value="Florida">Florida</option>
<option
value="Washington">Washington</option>
<option value="Hawaii">Hawaii</option>
<option value="Alaska">Alaska</option>
<option value="Virginia">Virginia</option>
<option value="Idaho">Idaho</option>
</select>

54
<select name ="city" required >
<option class="default" value="" disabled
selected>City</option>
<option value="Los Angeles">Los
Angeles</option>
<option value="San Diego">San
Diego</option>
<option value="Fresno">Fresno</option>
<option
value="Houston">Houston</option>
<option value="Austin">Austin</option>
<option value="Dallas">Dallas</option>
<option value="Texas City">Texas
City</option>
<option value="Miami">Miami</option>
<option
value="Orlando">Orlando</option>
<option
value="Jacksonville">Jacksonville</option>
<option value="Seattle">Seattle</option>
<option
value="Vancouver">Vancouver</option>

55
<option
value="Olympia">Olympia</option>
<option
value="Honolulu">Honolulu</option>
<option value="Hawi">Hawi</option>
<option value="Lahaina">Lahaina</option>
<option
value="Anchorage">Anchorage</option>
<option value="Sitka">Sitka</option>
<option value="Seward">Seward</option>
<option
value="Richmond">Richmond</option>
<option
value="Williamsburg">Williamsburg</option>
<option
value="Alexandria">Alexandria</option>
<option value="Boise">Boise</option>
<option value="Twin Falls">Twin
Falls</option>
<option
value="Moscow">Moscow</option>

</select>

56
<input type="text" name="pin" placeholder="Pin
Code" required />
<input type="text" name="arealoc"
placeholder="Area/Locality" required />
<input type="text" name="nominee_name"
placeholder="Nominee Name (If any)" />
<input type="text" name="nominee_ac_no"
placeholder="Nominee Account no" />

<select name ="acctype" required >


<option class="default" value="" disabled
selected>Account Type</option>
<option value="Saving">Saving</option>
<option value="Current">Current</option>
</select>
<input type="submit" name="submit"
value="Submit">
</form>
</div>
</div>

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

</body>
</html>

57
<?php

if(isset($_POST['submit'])){
session_start();
$_SESSION['$cust_acopening'] = TRUE;
$_SESSION['cust_name']=$_POST['name'];
$_SESSION['cust_gender']=$_POST['gender'];
$_SESSION['cust_mobile']=$_POST['mobile'];
$_SESSION['cust_email']=$_POST['email'];
$_SESSION['cust_landline']=$_POST['landline'];
$_SESSION['cust_dob']=$_POST['dob'];
$_SESSION['cust_pan=']=$_POST['pan_no'];
$_SESSION['cust_citizenship']=$_POST['citizenship'];
$_SESSION['cust_homeaddrs']=$_POST['homeaddrs'];
$_SESSION['cust_officeaddrs']=$_POST['officeaddrs'];
$_SESSION['cust_country']=$_POST['country'];
$_SESSION['cust_state']=$_POST['state'];
$_SESSION['cust_city']=$_POST['city'];
$_SESSION['cust_pin']=$_POST['pin'];
$_SESSION['arealoc']=$_POST['arealoc'];
$_SESSION['nominee_name']=$_POST['nominee_name'];
$_SESSION['nominee_ac_no']=$_POST['nominee_ac_no'];
$_SESSION['cust_acctype']=$_POST['acctype'];

58
header('location:cust_regfrm_confirm.php');
}
?>

cust_regfrm_confirm.php

<html>
<style>
body{
background-color: grey;
}
</style>
</body>
<?php
session_start();
if(!isset($_SESSION['$cust_acopening'])){

header('location:customer_reg_form.php');

?>
<html>

59
<head>
<link rel="stylesheet" type="text/css"
href="css/cust_regfrm_confirm.css" />

<?php include 'header.php' ?>


<title>Confirm</title>
</head>
<body>
<div class="cust_regfrm_cnfrm_container">
<div class="cnfrm_info">
<span><?php echo "Name : ".$_SESSION['cust_name']."<br>"; ?>
</span>
<span><?php echo "Gender : ".$_SESSION['cust_gender']."<br>"; ?>
</span>
<span><?php echo "Mobile No : ".
$_SESSION['cust_mobile']."<br>"; ?> </span>
<span><?php echo "Email Id : ".$_SESSION['cust_email']."<br>"; ?
> </span>
<span><?php echo "Landline : ".
$_SESSION['cust_landline']."<br>"; ?> </span>
<span><?php echo "DOB : ".$_SESSION['cust_dob']."<br>"; ?>
</span>
<span><?php echo "PAN No : ".$_SESSION['cust_pan=']."<br>"; ?>
</span>
<span><?php echo "CITIZENSHIP No : ".
$_SESSION['cust_citizenship']."<br>"; ?> </span>

60
<span><?php echo "Home Address : ".
$_SESSION['cust_homeaddrs']."<br>"; ?> </span>
<span><?php echo "Office Address : ".
$_SESSION['cust_officeaddrs']."<br>"; ?> </span>
<span><?php echo "Country : ".$_SESSION['cust_country']."<br>";
?> </span>
<span><?php echo "State : ".$_SESSION['cust_state']."<br>"; ?>
</span>
<span><?php echo "City : ".$_SESSION['cust_city']."<br>"; ?>
</span>
<span><?php echo "Pin Code : ".$_SESSION['cust_pin']."<br>"; ?>
</span>
<span><?php echo "Area/Locality : ".
$_SESSION['arealoc']."<br>"; ?> </span>
<span><?php echo "Nominee Name : ".
$_SESSION['nominee_name']."<br>"; ?> </span>
<span><?php echo "Nominee Account no : ".
$_SESSION['nominee_ac_no']."<br>"; ?> </span>
<span><?php echo "Account Type : ".
$_SESSION['cust_acctype']."<br>"; ?> </span><br>
<form method="post">
<div class="cnfrm-btn">
<div class="btn_innerdiv">
<input class="cnfrm-submit-btn" type="submit" name="cnfrm-
submit" value="Confirm" />
<input class="cnfrm-submit-btn" type="button" value="Go back"
onclick="history.back()"/>

61
</div>
</div>
</form>
</div>
</div>
</body>
<?php include 'footer.php' ?>
</html>

<?php

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

include 'db_connect.php';
$application_no = rand(1000,9999).mt_rand(10000,99999);
$name=$_SESSION['cust_name'];
$gender=$_SESSION['cust_gender'];
$mobile=$_SESSION['cust_mobile'];
$email=$_SESSION['cust_email'];
$landline=$_SESSION['cust_landline'];
$dob=$_SESSION['cust_dob'];
$pan=$_SESSION['cust_pan='];
$citizenship=$_SESSION['cust_citizenship'];
$homeaddrs=$_SESSION['cust_homeaddrs'];

62
$officeaddr=$_SESSION['cust_officeaddrs'];
$country=$_SESSION['cust_country'];
$state=$_SESSION['cust_state'];
$city=$_SESSION['cust_city'];
$pin=$_SESSION['cust_pin'];
$arealoc=$_SESSION['arealoc'];
$nominee_name =$_SESSION['nominee_name'];
$nominee_ac_no =$_SESSION['nominee_ac_no'];
$acctype=$_SESSION['cust_acctype'];

date_default_timezone_set('Asia/Kolkata');
$application_dt = date("d/m/y h:i:s A");

$sql="INSERT into pending_accounts (Application_no,


Name,
Gender,
Mobile_no,
Email_id,
Landline_no,
DOB,
PAN,
CITIZENSHIP,
Home_Addr,

63
Office_Addr,
Country,
State,
City,
Pin,
Area_Loc,
Nominee_name,
Nominee_ac_no,
Account_type,
Application_Date)

VALUES
('$application_no',
'$name',
'$gender',
'$mobile',
'$email',
'$landline',
'$dob',
'$pan',
'$citizenship',
'$homeaddrs',
'$officeaddr',
'$country',

64
'$state',
'$city',
'$pin',
'$arealoc',
'$nominee_name',
'$nominee_ac_no',
'$acctype',
'$application_dt')" ;

if($conn->query($sql) == true){

echo '<script>alert("Application submitted successfully\n\


nApplication number : '.$application_no.'\n\nPlease visit bank with
application number for account approval\n\nHint: From staff login,
approve application")
location="index.php"
</script>';

else
{
echo $sql;

}
}

65
?>
</html>

customer_login.php

<html>
<style>
body{
background-color: Grey;
}
</style>
</body>
<?php
ob_start();
session_start();
if(isset($_SESSION['customer_login'])){

header('location:customer_profile.php') ;

?>
<html>

66
<head>
<title>Login Page</title>

<link rel="stylesheet" type="text/css"


href="css/customer_login.css" />

</head>
<body>

<?php include'header.php' ?>


<div class="login_container">

<form method="post">

<br>
<div class="formspace">
<p class="formspace2">

<div class="form">

<label class="login">LOGIN</label>
<div class="input_field">

<label class="userdetail">Customer ID</label><br>


<input class="customer_id" type="text" name="customer_id"
required /><br>

67
<label class="userdetail">Password</label><br>
<input class="password" type="password" name="password"
required/><br>
<input class="login-btn" type="submit" name="login-btn"
value="LOGIN"/><br>
<a href="cust_forgetpass.php" class="help"><label
class="label_help" >FORGET PASSWORD ?</label></a>
<img class="userloginimg" src="img/home-logo-hi.png"
height="90px" width="90px">
</div>
</div>
</div> </div>
</form>
<br>

<?php include 'footer.php' ?>


</body>
</html>

<?php include 'customer_login_process.php'?>


</html>

68
customer_login_process.php

<html>
<style>
body{
background-color: grey;
}
</style>
</body>
<?php ob_start(); ?>
<?php
include 'db_connect.php';
if(isset($_POST['login-btn'])){

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

$password = $_POST['password'];
$customer_id = $_POST['customer_id'];
}

69
$sql="SELECT * FROM bank_customers where
Customer_ID='$customer_id' and Password='$password' ";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
if($customer_id != $row['Customer_ID'] && $password !=
$row['Password']){

echo '<script>alert("Incorrect Id/Password.")</script>';

else{

$_SESSION['customer_login'] = true;
$_SESSION['Balance'] = $row['Current_Balance'];
$_SESSION['Username'] = $row['Username'];
$_SESSION['Account_No'] = $row['Account_no'];
$_SESSION['Account_type'] = $row['Account_type'];
$_SESSION['Customer_Photo'] = $row['Customer_Photo'];
$_SESSION['Mobile_no'] = $row['Mobile_no'];
$_SESSION['IFSC_Code'] = $row['IFSC_Code'];
$_SESSION['Email_ID']= $row['Email_ID'];
$_SESSION['customer_Id'] = $customer_id;

70
$_SESSION['Debit_Card_No'] =$row['Debit_Card_No'];
$_SESSION['Nominee_name'] = $row['Nominee_name'];
$_SESSION['Nominee_ac_no'] = $row['Nominee_ac_no'];
$_SESSION['Branch'] = $row['Branch'];
$_SESSION['Cheque'] = $row['Cheque'];
date_default_timezone_set('Asia/Kolkata');
$_SESSION['this_login'] = date("d/m/y h:i:s A");

header('location:customer_profile.php');
}

?>
</html>

71
customer_profile.php

<html>
<style>
body{
background-color: grey;
}
</style>
</body>
<?php
include 'header.php' ;
include 'customer_profile_header.php';
if($_SESSION['customer_login'] == FALSE)
{
header('location:customer_login.php');

?>
<html>
<head><title>My Profile</title>
<link rel="stylesheet" type="text/css"
href="css/customer_profile.css" />

72
</head>
<body>

<?php
$cust_id= $_SESSION['customer_Id'];
include 'db_connect.php';
$sql="SELECT * FROM bank_customers where Customer_ID=
'$cust_id' ";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$current_bal = $row['Current_Balance'];

?>

<div class="cust_profile_container">
<div class="acc_details">
<span class="heading">Account Details</span><br>
<label>Customer Id : <?php echo $_SESSION['customer_Id']; ?
></label>
<label>Account Number : <?php echo
$_SESSION['Account_No']; ?></label>

73
<label>Account Name : <?php echo $_SESSION['Username']; ?
></label>
<label>Account Type : <?php echo
$_SESSION['Account_type']; ?></label>
<label>Available Balance : $<?php echo $current_bal ;
?></label>
</div>
<div class="statement">
<label class="heading">Bank Statement</label>
<table>
<th width="5%">#</th>
<th width="15%">Date</th>
<th width="15%">Trans. Id</th>
<th width="31%">Description</th>
<th width="10%">Cr.</th>
<th width="10%">Dr.</th>
<th width="20%">Total</th>
<?php

$cust_id = $_SESSION['customer_Id'];

$sql = "SELECT * from passbook_$cust_id ORDER By Id DESC LIMIT


10";
$result = $conn->query($sql);
if ($result->num_rows > 0) {

74
$Sl_no = 1;

while($row = $result->fetch_assoc()) {

echo '
<tr>
<td>'.$Sl_no++.'</td>
<td>'.$row['Transaction_date'].'</td>
<td>'.$row['Transaction_id'].'</td>
<td>'.$row['Description'].'</td>
<td>'.$row['Cr_amount'].'</td>
<td>'.$row['Dr_amount'].'</td>
<td>$'.$row['Net_Balance'].'</td>
</tr>';
}
}
?>
</table>
</div>
</div>
</body>
<?php include 'footer.php' ; ?>
</html>
</html>

75
customer_profile_header.php

<html>
<style>
body{
background-color: grey;
}
</style>
</body>
<?php
session_start();
if($_SESSION['customer_login'] != true)
{

header('location:customer_login.php');

?>

<html>
<head>

76
<link rel="stylesheet" type="text/css"
href="css/customer_profile_header.css" />
<style>
#home, #logout{

background-color:rgba(5, 21, 71,0.9);


border:none;
padding:5px;
width:70px;
color:white;
cursor:pointer;
box-shadow:2px 2px 6px rgba(5, 21, 71,0.9);
transition-duration: 0.6s;
}

#home:hover, #logout:hover{

padding:10px;

}
</style>
</head>

<body id="customer_profile">

77
<?php
include 'db_connect.php';

$customer_id=$_SESSION['customer_Id'];
$sql="SELECT * FROM bank_customers WHERE
Customer_ID='$customer_id'";
$result=$conn->query($sql);
if($result->num_rows > 0)
$row = $result->fetch_assoc();

?>
<div class="head">

<div class="customer_details">

<a href="upload.php"> <?php echo '<img class="custmr_img"


src="data:image/jpeg;base64,'.base64_encode($row['Customer_Photo']
).'"'; ?> onerror="this.src='img/customers/No_image.jpg'"
height="115px" width="105px"/> </a>
</div>
<div class="welcome">
<label>Welcome <?php echo $_SESSION['Username'];
?></label><h6 class="lstlogin">Last login : <?php echo
$row['Last_Login'] ?> </h6>

78
</div>
<a class="cust_home" href="customer_profile.php"><input
type="button" name="home" value="Home" id="home"></a>
<a class="cust_logout" href="customer_logout.php"><input
type="button" name="logout_btn" value="Logout" id="logout"></a>
</div>
<div class="profile_nav">
<ul>
<a href="customer_profile_myacc.php"><li class="link1">My
Account</li></a>
<a href="customer_profile_myprofile.php"><li class="link2">My
Profile</li></a>
<a href="customer_pass_change.php"><li class="link3">Change
Password</li></a>
<a href="fund_transfer.php"><li class="link4">Fund
Transfer</li></a>
<a href="cust_statement.php"><li
class="link5">Statement</li></a>
</ul>
</div>
</body>
</html>
</html>
customer_profile_myacc.php

79
<html>
<head><title>My Account</title>

<link rel="stylesheet" type="text/css"


href="css/customer_profile_myacc.css" />
<style>
#customer_profile .link1{

background-color: rgba(5, 21, 71,0.4);

}
</style>
<?php include 'header.php' ; ?></head>
<body>
<?php include 'customer_profile_header.php' ?>

<?php

if($_SESSION['customer_login'] == true)
{

80
else{

header('location:customer_login.php');
}

?>

<?php
$cust_id= $_SESSION['customer_Id'];
include 'db_connect.php';
$sql="SELECT * FROM bank_customers where Customer_ID=
'$cust_id' ";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$current_bal = $row['Current_Balance'];

?>

<div class="cust_myacc_container">

81
<br><br>
<div class="accdet">
<span class="heading">Account Details</span><br>
<label>Customer Id : <?php echo $_SESSION['customer_Id']; ?
></label>
<label>Account Number : <?php echo
$_SESSION['Account_No']; ?></label>
<label>Account Name : <?php echo $_SESSION['Username']; ?
></label>
<label>Account Type : <?php echo
$_SESSION['Account_type']; ?></label>
<label>IFSC Code : <?php echo $_SESSION['IFSC_Code'];
?></label>
<label>Branch : <?php echo $_SESSION['Branch']; ?></label>
<label>Cheque : <?php echo $_SESSION['Cheque']; ?></label>

<label>Available Balance :$<?php echo $current_bal;


?></label>
<label>Mobile No : <?php echo $_SESSION['Mobile_no'];
?></label>

<label>Debit Card No : <?php echo


$_SESSION['Debit_Card_No']; ?></label>
<label>Nominee Name : <?php echo
$_SESSION['Nominee_name']; ?></label>

82
<label>Nominee Ac/no : <?php echo
$_SESSION['Nominee_ac_no']; ?></label>

<label>Email Id : <?php echo


$_SESSION['Email_ID']; ?></label><br><br><br><br>
<a href="customer_pass_change.php"><input
type="button" name="pass-chng" value="Change Password"></a>
</div>

<br>
</div>

</body>
<?php include 'footer.php' ; ?>
</html>

customer_profile_myprofile.php

<html>

83
<head><title>My Profile</title>
<link rel="stylesheet" type="text/css"
href="css/customer_profile_myprofile.css">
<style>
#customer_profile .link2{

background-color: rgba(5, 21, 71,0.4);

}
</style>

</head>
<body>
<?php include 'header.php';
include 'customer_profile_header.php' ?>
<?php
$cust_id= $_SESSION['customer_Id'];
include 'db_connect.php';
$sql="SELECT * FROM bank_customers where Customer_ID=
'$cust_id' ";
$result = $conn->query($sql);
$row = $result->fetch_assoc();

?>
<div class="myprofile_container">

84
<div class="customer_profile_photo">

<?php echo '<img class="custmr_img"


src="data:image/jpeg;base64,'.base64_encode($row['Customer_Photo']
).'"'; ?>

<?php echo $row['Username']; ?>


<?php echo $row['Gender']; ?>
<?php echo $row['Mobile_no']; ?>
<?php echo $row['Landline_no']; ?>
<?php echo $row['Home_Addr']; ?>
<?php echo 'INR' ; ?>
<?php echo $row['Country']; ?>
<?php echo $row['State']; ?>
<?php echo $row['City']; ?>
<?php echo $row['Pin_code']; ?>
<?php echo $row['Ac_Opening_Date']; ?>
<?php include 'footer.php'; ?>
cust_forgetpass.php

<html>
<head>

85
<title>Forget Password</title>

<link rel="stylesheet" type="text/css" href="css/cust_forgetpass.css"/>


</head>
<style>
body{
background-color: Grey;
}
</style>
</body>
<body>
<?php include 'header.php'; ?>
<div class="forgetpass_cotainer">
<p>Forget Password</p>
<form method="post">
<input type="text" name="cust_id" placeholder="Customer ID"
required /><br>
<input type="text" name="dbt_crd" placeholder="Debit Card Number"
required /><br>
<input type="text" name="dbt_crdpin" placeholder="Debit Card
Pin"required /><br>
<input type="text" name="mobile_no" placeholder="Registerd Mobile
no" required /><br>
<input type="submit" name="sendotp" value="Submit"><br>
</form><br>

86
</div>
</div>
</body>
</html>

<?php
include 'footer.php';
if(isset($_POST['sendotp'])){
session_start();
include 'cust_forgetpass_validate.php';

?>

cust_forgetpass_validate.php

<html>
<style>
body{
background-color: Grey;
}

87
</style>
</body>
<?php
$customer_id = $_POST['cust_id'];
$debitcard = $_POST['dbt_crd'];
$dbt_pin = $_POST['dbt_crdpin'];
$mob_no = $_POST['mobile_no'];

include 'db_connect.php';

$sql = "SELECT Username,Password,Customer_ID,


Mobile_no,Debit_Card_No,Debit_Card_Pin FROM bank_customers
WHERE Customer_ID = '$customer_id'";
$result = $conn->query($sql);

if(!is_numeric($customer_id) || !is_numeric($debitcard) || !
is_numeric($dbt_pin) || !is_numeric($mob_no)){
echo '<script>alert("Incorrect format")</script>';
}

else{

if($result->num_rows > 0){


$row = $result->fetch_assoc();
if($mob_no == $row['Mobile_no'] && $debitcard ==
$row['Debit_Card_No'] && $dbt_pin == $row['Debit_Card_Pin']){

88
$otp = "SBI".mt_rand(10000,99999);
$_SESSION['cust_id'] = $row['Customer_ID'];
$_SESSION['forgetpass_otp'] = $otp;
$hidden_mob_no = substr($mob_no, 0,
3)."XXXX".substr($mob_no, 7, 10);

require('textlocal.class.php');
$apikey = 'Mzie479SxfY-
Z7slYf9AI3zVXCAu0G5skUBQVYOfRU';
$textlocal = new Textlocal(false,false,
$apikey);
$numbers = array($mob_no);
$sender = 'TXTLCL';
$message = 'Hello '.$row['Username'].' your
OTP is : '.$otp;

try {
$result = $textlocal-
>sendSms($numbers, $message, $sender);
print_r($result);
} catch (Exception $e) {
die('Error: ' . $e->getMessage());
}

89
echo '<script>alert("OTP sent to your registered mobile
number '.$hidden_mob_no.' \nPlease verify to get your password")
location="cust_forgetpassotpverify.php"</script>';

else{

if($mob_no != $row['Mobile_no'] && $debitcard ==


$row['Debit_Card_No'] && $dbt_pin == $row['Debit_Card_Pin']){

echo '<script>alert("Incorrect Mobile number.\n


Please enter registered mobile number.")</script>';
}
else{
if($mob_no == $row['Mobile_no'] && $debitcard !
= $row['Debit_Card_No'] && $dbt_pin == $row['Debit_Card_Pin']){

echo '<script>alert("Incorrect Decit Card


number")</script>';
}
else{

90
if($mob_no == $row['Mobile_no'] &&
$debitcard == $row['Debit_Card_No'] && $dbt_pin !=
$row['Debit_Card_Pin']){
echo '<script>alert("Incorrect Decit
Card pin.")</script>';
}
else{
if($mob_no != $row['Mobile_no']
&& $debitcard != $row['Debit_Card_No'] && $dbt_pin !=
$row['Debit_Card_Pin']){
echo '<script>alert("All fields
incorrect.")</script>';
}
else{
if($mob_no ==
$row['Mobile_no'] && $debitcard != $row['Debit_Card_No'] &&
$dbt_pin != $row['Debit_Card_Pin']){
echo
'<script>alert("Incorrect Debit Card details.")</script>';
}
else{
if($mob_no !=
$row['Mobile_no'] && $debitcard != $row['Debit_Card_No']){

echo
'<script>alert("Mobile number and Debit Card Number
mismatch")</script>';

91
}
}
}
}
}
}
}
}
else{
echo '<script>alert("Customer not found!")</script>';
}
}
?>
</html>

cust_forgetpassotpverify.php

<html>
<style>
body{
background-color: grey;
}
</style>
</body>

92
<?php
session_start();
if($_SESSION['forgetpass_otp'] == FALSE){

header("location:customer_login.php");
}

?>

<html>
<head><title>OTP Verification</title>
<link rel="stylesheet" type="text/css"
href="css/cust_forgetpassotpverify.css">
</head>
<body>
<?php include 'header.php' ; ?>
<div class="cust_forgetpassotpverify">
<form method="post">
<input type="text" name="otpcode" placeholder="OTP
Code">
<input type="submit" name="verify-btn" value="Verify">
</form>
</div>

93
<?php include 'footer.php' ; ?>
</body>
</html>

<?php

echo $_SESSION['forgetpass_otp'];
if(isset($_POST['verify-btn'])){

if(empty($_POST['otpcode'])){

echo '<script>alert("OTP is required")</script>';


}

else{

if($_POST['otpcode'] == $_SESSION['forgetpass_otp'] ){

include 'db_connect.php';
$cust_id = $_SESSION['cust_id'];
$sql = "SELECT Password,Username,Mobile_no FROM
bank_customers WHERE Customer_ID = $cust_id ";

94
$result = $conn->query($sql);
if($result->num_rows < 0){

echo "Failed : ".$sql;


}

else {
$row = $result->fetch_assoc();
$pass = $row['Password'];
$mob = $row['Mobile_no'];
$cust_name = $row['Username'];
$hidden_mob_no = substr($mob, 0, 3)."XXXX".substr($mob,
7, 10);

require('textlocal.class.php');

$apikey = 'Mzie479SxfY-
Z7slYf9AI3zVXCAu0G5skUBQVYOfRU';
$textlocal = new Textlocal(false,false,$apikey);
$numbers = array($mob);
$sender = 'TXTLCL';
$message = 'Hello '.$cust_name.' your internet banking
account password is : '.$pass'';

95
try {
$result = $textlocal->sendSms($numbers,
$message, $sender);
print_r($result);
} catch (Exception $e) {
die('Error: ' . $e->getMessage());
}

unset($_SESSION['cust_id']);
unset($_SESSION['forgetpass_otp']);

echo '<script>alert("Password sent successfully to your


registered mobile number '.$hidden_mob_no.' \nPlease do not share
with anyone")
location="customer_login.php";
</script>';

96
else

echo '<script>alert("Incorrect OTP")</script>';

}
}
}

?>
</html>

FUTURE SCOPE
In a nutshell, it can be summarized that the future scope of the
project circles around maintaining information regarding:
We can add printer in future.
 We can give more advance software for Online Banking System
including more facilities
 We will host the platform on online servers to make it
accessible worldwide
 Integrate multiple load balancers to distribute the loads of the
system
 Create the master and slave database structure to reduce the
overload of the database queries
 Implement the backup mechanism for taking backup of
codebase and database on regular basis on different servers

97
The above mentioned points are the enhancements which can be
done to increase the applicability and usage of this project. Here we
can maintain the records of Accounts and Bank. Also, as it can be
seen that now-a-days the players are versatile, i.e. so there is a scope
for introducing a method to maintain the Online Banking System.
Enhancements can be done to maintain all the Accounts, Bank,
Customer, Transaction, Internet Banking.

We have left all the options open so that if there is any other future
requirement in the system by the user for the enhancement of the
system then it is possible to implement them. ln the last we would
like to thanks all the persons involved in the development of the
system directly or indirectly. We hope that the project will serve its
purpose for which it is develop there by underlining success of
process.

CONCLUSION
Our project is only a humble venture to satisfy the needs to manage their
project work. Several user friendly coding have also adopted This package
shall prove to be a powerful package in satisfying all the requirements of
the school. The objective of software planning is to provide a frame work
that enables the manger to make reasonable estimates made within a
limited time frame at the beginning of the software project and should be
updated regularly as the project progresses.

At the end it is concluded that we have made effort on following points...

98
 A description of the background and context of the project and its
relation to work already done in the area.
 Made statement of the aims and objectives of the project.
 The description of Purpose, Scope, and applicability.
 We define the problem on which we are working in the project.
 We describe the requirement Specifications of the system and the
actions that can be done on these things.
 We understand the problem domain and produce a model of the
system, which describes operations that can be performed on the
system.

99

You might also like