Professional Documents
Culture Documents
By:
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
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.
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
Hardware requirements
4
ACKNOWLEDGEMENT
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
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
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
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
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
15
CERTIFICATE OF ORIGINALITY
16
CERTIFICATE OF ORIGINALITY
17
CERTIFICATE OF ORIGINALITY
18
CERTIFICATE OF ORIGINALITY
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.
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.
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.
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.
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.
23
syntax, dynamic typing, prototype-based object orientation, and
firstclass functions.
For the backend and logical part of our project, we have used PHP
language, the details of which are as follows:
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.
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.
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.
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.
• Create Account
• Login
• Update Profile
• Password Recovery
• View Profile
⚫ Amount Transaction
⚫ Delete account
⚫ Logout
User objectives
28
CREATE ACCOUNT
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
PASSWORD RECOVERY
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
DELETE ACCOUNT
LOGOUT
30
Scope
Create Account
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
Performance
There are 6 major steps in design process. The first 5 steps are
usually done on paper and finally the design is implemented.
32
Identify the data that is needed for each table and
relationship
Implement the design
SECURITY
33
Description
Technical issues
34
Merely we think of the cost estimation on the basis of the
following points:
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
DFD DIAGRAM
35
Account Verification
Customer Info Account Customer List
Opening
Account DB
Add Custo
Add Beneficiary Beneficiary
Fund Trans DB
Update
Transaction Detail
Fund
Transfer
Debit Card DB
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
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
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">
<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.
<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>
footer.php
</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 © 2020-23 Online Banking System. All rights
reserved.</span>
</div>
</footer>
db_connect.php
<?php
$servername = "localhost";
$username = "root";
$password = "";
$database = "bnkms";
if ($conn->connect_error) {
header('location:server_down.php');
}
?>
51
customer_reg_form.php
<html>
<head>
<title>Registration Form</title>
<link rel="stylesheet" type="text/css"
href="css/customer_reg_form.css"/>
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" />
<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" />
<?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" />
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");
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){
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>
</head>
<body>
<form method="post">
<br>
<div class="formspace">
<p class="formspace2">
<div class="form">
<label class="login">LOGIN</label>
<div class="input_field">
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>
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']){
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'];
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{
#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">
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>
}
</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>
82
<label>Nominee Ac/no : <?php echo
$_SESSION['Nominee_ac_no']; ?></label>
<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{
}
</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">
<html>
<head>
85
<title>Forget Password</title>
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';
if(!is_numeric($customer_id) || !is_numeric($debitcard) || !
is_numeric($dbt_pin) || !is_numeric($mob_no)){
echo '<script>alert("Incorrect format")</script>';
}
else{
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{
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'])){
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){
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']);
96
else
}
}
}
?>
</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.
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