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

ONLINE DOCTOR APPOINTMENT SYSTEM

A Mini Project Report submitted by

Dilna K Daison
(VAS20MCA-2021)

to APJ Abdul Kalam Technological University


in partial fulfillment of the requirements for the award of the degree of
Master of Computer Applications

Department of Computer Applications


Vidya Academy of Science & Technology
Thalakkottukara, Thrissur - 680 501
December 2021
Online Doctor Appointment System ii

Department of Computer Applications


Vidya Academy of Science & Technology
Thalakkottukara, Thrissur - 680 501
(http://www.vidyaacademy.ac.in)

CERTIFICATE

This is to certify that the report titled Online Doctor Appointment System is a bona-fide record
of the work related to the paper 20MCA245 Mini Project done by Dilna K Daison (Reg. No.
VAS20MCA-2021) of S3 MCA (2020 admissions) class of Vidya Academy of Science & Tech-
nology, Thrissur - 680501 in partial fulfillment of the requirement for the award of the Degree of
Master of Computer Applications of APJ Abdul Kalam Technological University.

Guide/Supervisor Head of Department


Name : Mr Manesh D (Asst. Prof.) Name : Dr V N Krishnachandran
Signature : ........................................... Signature : ...........................................
Date : February 23, 2022 Date : February 23, 2022

(Seal of Department of Computer Applications)

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System iii

Declaration

I, Dilna K Daison , studying in Third Semester MCA (2020 admissions) class of Vidya Academy
of Science & Technology, Thrissur – 680501, hereby declare that the project report (“ Online
Doctor Appointment System”) submitted by me is a bona fide work done by me under supervision
of Mr Manesh D (Asst. Prof.) . This submission represents my ideas in my own words and where
ideas or words of others have been included, I have adequately and accurately cited and referenced
the original sources. I also declare that I have adhered to ethics of academic honesty and integrity
and have not misrepresented or fabricated any data or idea or fact or source in my submission. I
understand that any violation of the above will be a cause for disciplinary action by the institute
and/or the University and can also evoke penal action from the sources which have thus not been
properly cited or from whom proper permission has not been obtained. This report has not been
previously formed the basis for the award of any degree, diploma or similar title of any other
University.

Place : Thrissur – 680501 Signature of student : ......................................


Date : February 23, 2022 Name of student : Dilna K Daison

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System iv

Acknowledgment

I wish to record my indebtedness and thankfulness to all who helped me to prepare this Report
titled “ Online Doctor Appointment System ” and present it in a satisfactory way. This Report is
part of my work related to the paper 20MCA245 Mini Project.
I am especially thankful to my guide and supervisor Mr Manesh D (Asst. Prof.) in the
Department of Computer Applications for giving me valuable suggestions and critical inputs in the
preparation of this report. I am also thankful to Dr V N Krishnachandran, the Head of Computer
Applications Department for encouragement.
My friends in my class have always been helpful and I am grateful to them for patiently
listening to my presentations on my work related of the Project.

Dilna K Daison
(Reg. No. VAS20MCA-2021)
S3 MCA (2020 Admissions)
Vidya Academy of Science & Technology
Thrissur -680 501.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System v

Synopsis

Efficient doctor patient portal is a managing system that helps doctor as well as the patients by
providing options of booking appointments as per the convenience of both doctor and patients with
the motive of medical progress. Through this system, doctors can easily manage the appointment
slots online. System will make all the empty slots visibly available to the patients, which are
booked by the name of any particular patient. The system makes it easy to manage doctor and their
availability on various dates and timings. This allows for an automated patient doctor handling
system through an online interface.
It stores all the patient details, patients profile,records etc. This system enables doctor manage
patient records and appointments. User can enter their details, update their profile and they can
select doctors to make appointments. Other than that, the system is user friendly and it can help
the clinic to manage their appointments. The system helps to avoid making duplicate appoint-
ments. Users can view available doctors and their timings and can make appointments according
to it. Users also get an option to cancel their appointments. Users can view their upcoming ap-
pointments. The system also allows doctor to log in. Doctors can edit their profile and view their
upcoming appointments, patients,Add records of patients etc.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System vi

Contents

Certificate from College ii

Declaration by Student iii

Acknowledgment iv

Synopsis v

Table of Contents vi

List of Tables viii

List of Figures ix

1 INTRODUCTION 2
1.1 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Purpose of the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 SYSTEM ANALYSIS 4
2.1 The Existing System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Proposed System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 FEASIBILITY STUDY 5
3.1 Technical Feasibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Economical Feasibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3 Operational Feasibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4 SYSTEM DESIGN 7
4.1 Input Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.2 Output Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System vii

4.3 Database Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20


4.3.1 Data Flow Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5 Entity Relationship Diagram 23

6 IMPLEMENTATION, TESTING AND VALIDATION 24


6.1 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.2 Testing Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.2.1 Unit testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.2.2 Integration testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.2.3 Blackbox testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.2.4 Whitebox testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.3 Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

7 CONCLUSION 32

8 SCOPE FOR FUTURE ENHANCEMENT 33

APPENDICES 34

A SCRUM PROCESS ARTIFACTS 35


A.1 Product Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
A.2 Scrum Meeting Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

B TABLE STRUCTURE 38

C SAMPLE SCREENSHOTS 40

D Sample code 49
D.1 login.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
D.2 Appointment.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Bibliography 60

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System viii

List of Tables

B.1 Patient table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38


B.2 Doctor table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
B.3 Schedule table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
B.4 ReadingType table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
B.5 Appointment table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
B.6 Record table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System ix

List of Figures

4.1 DFD Level 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


4.2 DFD Level 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

5.1 ER Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

C.1 Home page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40


C.2 Patient Login page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
C.3 Patient Registration page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
C.4 Check Availability page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
C.5 Contact page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
C.6 About Doctor page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
C.7 Patient Profile page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
C.8 Patient Profile Update page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
C.9 Make Appointment page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
C.10 Patient Appointment page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
C.11 Doctor Login page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
C.12 Doctor Dashboard page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
C.13 Add Schedule page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
C.14 Patient List page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
C.15 Doctor Profile page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
C.16 Doctor Profile Update page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 1

PROJECT REPORT

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 2

Chapter 1

INTRODUCTION

1.1 Problem Definition

Efficient doctor patient portal is a managing system that helps doctors as well as the patients by
providing options of booking appointments as per the convenience of both doctor and patients with
the motive of medical progress. Through this system, doctors can easily manage the appointment
slots online. System will make all the empty slots visibly available to the patients, which are
booked by the name of any particular patient. The system makes it easy to manage various doctors
and their availability on various dates and timings. This allows for an automated patient doctor
handling system through an online interface.

1.2 Objectives

The main objective is to develop a PHP based web application named “Online Doctor Appoint-
ment System” that covers all the aspects of making appointment of doctor. It enables healthcare
providers to improve operational effectiveness, reduce costs, reduce medical errors, reduce time
consumption and enhance delivery of quality of care. This system help reduce the problems occur
when using the manual system and helps patients to skip endless queues. The important thing is
it will become easier for the data record and retrieval. This software also stores all the patient de-
tails, patients profile etc. This system enables doctor to manage patient records and appointments.
User can enter their details, update their profile and they can select doctors to make appointments.
Other than that, the system is user friendly and it can help the clinic to manage their appointments.
The system helps to avoid making duplicate appointments. Users can view available doctors and
their timings and can make appointments according to it. Users also get an option to cancel their
appointments. Users can view their upcoming appointments. The system also allows doctor to log
in. Doctors can edit their profile and view their upcoming appointments, patients etc. The Project

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 3

Contains:

• Doctor

The Doctor is like admin and has all the information about all the patients and about their
appointments, records etc. This module is divided into different sub-modules:-

– Login - Doctor can login to page using username and password


– Manage Schedule -Doctor can add, edit and delete their availability under this system.
– Manage Patient Appointments -Doctors can view their upcoming appointments here
and also change appointment status.
– Edit Profile -Doctor can edit the profile details.

• Patient

– Registration - A new patient will have to register in the system by providing essential
details.
– Login - A patient must login with his user name and password to the system after
registration.
– Manage Profile -A patient can change their profile details also.
– Manage Appointments - A patient can book appointments and they can also cancel
appointment
– Viewing Doctor Availability -A patient can view Doctor Availability data on web page.

1.3 Purpose of the Project

Purpose of this project is to create doctor patient handling management system that will help
doctors in their work and will also help patients to book doctor appointments . The system allows
doctors to manage their booking slots . Patients are allowed to book empty slots online and those
slots are reserved in their name. If anybody is ill and wants to visit a doctor for check up, he or she
needs to visit the hospital and waits until the doctor is available. The patient also waits in a queue
while getting appointment. If the doctor cancels the appointment for some emergency reasons
then the patient is not able to know about the cancellation of the appointment unless or until he or
she visits the clinic. As the Online Appointment System is developing rapidly, therefore, one can
use the system to overcome such problems and inconvenience for the patients.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 4

Chapter 2

SYSTEM ANALYSIS

2.1 The Existing System

The Existing system has a lot of paper work. To maintain the records of appointments and service
manually, is a Time consuming task. With the increase in content of database, it will become
a huge task to maintain the database. Requires large quantities of file cabinets. The retrieval of
records of previously registered patients will be a tedious task. Lack of security for the records and
there is a chance of manipulation of records. If someone want to check the details of the available
doctor the Existing system does not provide any necessary detail of this type.

2.2 Proposed System

The proposed system that will helps doctors in their work and will also help patients to book doctor
appointments and view medical progress. The system allows doctors and patient to manage their
booking slots online. Patients are allowed to book empty slots online and those slots are reserved
in their name and id. The system manages the appointment data for multiple doctors of various
date and times based on the requirement. Each time a user visits a doctor his/he medical history
as and when needed. At the same time a doctor may view patients previews medical history while
the patient visit him.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 5

Chapter 3

FEASIBILITY STUDY

Technical feasibility centers on the existing manual system of the test management process and
to what extent it can support the system.According to feasibility analysis procedure the technical
feasibility of the system is analyzed and the technical requirements such as software facilities,
procedure, inputs are identified. It is also one of the important phases of the system development
activities. It is technically feasible, since the whole system is designed into the latest technologies
like PHP and MYSQL Server which are the most recent technologies to develop web based sys-
tems and design databases. The system offers greater levels of user friendliness combined with
greater processing speed. Therefore, the cost of maintenance can be reduced. Since, processing
speed is very high and the work is reduced in the maintenance point of view management convince
that the project is operationally feasible.

3.1 Technical Feasibility

Economic analysis is most frequently used for evaluation of the effectiveness of the system. More
commonly knows as cost/benefit analysis the procedure is to determine the benefit and saving that
are expected from a system and compare them with costs, decisions is made to design and imple-
ment the system. This part of feasibility study gives the top management the economic justification
for the new system. This is an important input to the management the management, because very
often the top management does not like to get confounded by the various technicalities that bound
to be associated with a project of this kind. A simple economic analysis that gives the actual
comparison of costs and benefits is much more meaningful in such cases. It is economically fea-
sible, it will only require a single operator to operate the system, who is responsible for entering
the data into the database via a user interface provided to him, who can also able to show all the
data in HTML tabular form so to provide information regarding the students who are either taken
admission or to take admission, since it requires only a single person to operate the whole system

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 6

thus reduces the cost to operate the system. In the system, the organization is most satisfied by
economic feasibility. Because, if the organization implements this system, it need not require any
additional hardware resources as well as it will be saving lot of time.

3.2 Economical Feasibility

It is Operational feasible, since the system is providing a attractive user interface to the opera-
tor/end user, so they feel very easy to work onto it. Response to operator/end user is very fast
and very good. Since, as we mentioned above that it requires much less amount of cost, it uses
computer work so it is very fast to operate and it is very easy for user to work on it.

3.3 Operational Feasibility

It centers on the reaction of the users. To train the user in an easy matter since the proposed
systemis easy to understand and operate. Any one, with the knowledge of the basic computer
conceptscan operate the system. The user has no need to know anything about software used and
also tosome extent to hardware used

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 7

Chapter 4

SYSTEM DESIGN

The system design develops the architectural detail required to build a system or product. As in the
case of any systematic approach, this software too has undergone the best possible design phase
fine tuning all efficiency, performance and accuracy levels. The first step in system designing is
to determine how the output is to be produced and in what format. Samples of the output and
input are also presented. In the second step, input data and master files are to be designed to
meet requirement of the proposed output. The processing phases are handled through program
construction and testing, including a list of the programs needed to meet the system’s objectives
and complete documentation

4.1 Input Design

The input design is the link between the information system and the user. It comprises the de-
veloping specification and procedures for data preparation and those steps are necessary to put
transaction data into a usable form for processing data entry. The activity of putting data into the
computer for processing can be achieved by inspecting the computer to read data from a written
or printed document or it can occur by having people keying the data directly into the system. The
design of input focuses on controlling the amount of input required, controlling errors, avoiding
delay, avoiding extra steps and keeping the process simple. The system needs the data regard-
ing the asset items, depreciation rates, asset transfer, physical verification for various validation,
checking, calculation and report generation. The error raising method is also included in the soft-
ware, which helps to raise error message while wrong entry of input is done.

Login Page

<?php
global $uname;

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 8

global $pwd;
?>

<?php
include ’C:\New xampp\htdocs\mini project\
doctor_patient\connection.php’;

if(isset($_POST[’Submit’])){
$uname=$_POST[’email’];
$pwd=$_POST[’pwd’];
$query="select * from patient where patientEmail=’$uname’ and
password=’$pwd’";
$res=mysqli_query($conn,$query);
$count=mysqli_num_rows($res);
if($count>0)
{
$row=mysqli_fetch_array($res);
header("Location:home.php");
?>
<script>
alert("Login successfully");
</script>
<?php
}
else
{
?>
<script type="text/javascript">
alert ("Login failed");
</script>
<?php
}
mysqli_close($conn);
}
?>
<!doctype html>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 9

<html lang="en">
<head>
<title>Login </title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,
initial-scale=1, shrink-to-fit=no">

<link href="https://fonts.googleapis.com/css?
family=Lato:300,400,700&display=swap" rel="stylesheet">

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/


font-awesome/4.7.0/
css/font-awesome.min.css">

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

</head>
<body class="img js-fullheight" style="background-image:
url(login1/images/img2.webp);">
<section class="ftco-section">
<div class="container">
<div class="row justify-content-center">
<div class="col-md-6 text-center mb-5">
<h2 class="heading-section">Login </h2>
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-6 col-lg-4">
<div class="login-wrap p-0">
<h3 class="mb-4 text-center">Have an account?</h3>
<form action="" class="signin-form" method="post">
<div class="form-group">
<input type="email" class="form-control" name="email"
placeholder="Email" required>
</div>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 10

<div class="form-group">
<input id="password-field" type="password"
class="form-control"
name="pwd" placeholder="Password" required>
<span toggle="#password-field"
class="fa fa-fw fa-eye field-icon
toggle-password"></span>
</div>
<div class="form-group">
<button type="submit" name="Submit"
class="form-control btn btn-primary submit px-3">
Sign In</button>
</div>
<div class="form-group d-md-flex">
<div class="w-50">

</div>
<div class="w-50 text-md-right">
<a href="#" style="color: #fff"></a>
</div>
</div>
</form>
<p class="w-100 text-center"> Don’t have account
<a href="register.php">click here</a></p>
<p class="w-150 text-center" style="color:white;">
Back to Home <a href="index.php">click here</a>
</p>
<div class="social d-flex text-center">

</div>
</div>
</div>
</div>
</div>
</section>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 11

<script src="login1/js/jquery.min.js"></script>
<script src="login1/js/popper.js"></script>
<script src="login1/js/bootstrap.min.js"></script>
<script src="login1/js/main.js"></script>

</body>
</html>

4.2 Output Design

In output design the emphasis is given on producing a hard copy of the information required as the
output on the screen in some predefined manner. Computer output is the most important process
that involves designing necessary outputs that should be given to various users according to their
requirements. Efficient intelligible output design should improve system relationship with the user
and help in decision making. Forms are designed with tools like Text boxes, List boxes, Radio
button etc... which are very user friendly and self explanatory. Proper validations are given to the
text boxes with user understandable error messages which help the user to correct it and submit
again. The data in the system is stored and retrieved from the database. Designing the database is
a part of the system design. Data elements and data structures to be stored have been identified at
analysis stage. They are structured and put together to design the data storage and retrieval system.
The general theme behind the database is to handle the information as an integrated whole. When
designing the database, we have to make decisions regarding how best to make some system in
the real world and model it as database. The overall objective in the development of database
technology has been to treat data as an organization resource and as an integrated whole. DBMS
allow data to be protected and organized separately from other resources. Database is an inte-
grated collection of data. The most significant form of data as seen by the programmers is data
as stored on the direct access storage devices. This is the difference between logical and physical
design. Database files are the key source of information in to the system. The files should be
properly designed and planned for collections, accumulations, editing and retrieving the required
information. This database contains tables, where each table corresponds to one particular type
of information. Each piece of information in the table is called a filed or column. A table also
contains records, which is a set of fields. All records in a table have the same set of fields with
different information. There are primary key fields that uniquely identify record table.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 12

Patient List Page

<?php
session_start();

include ’C:\New xampp\htdocs\mini project\doctor_patient


\doctor\connection.php’;
$req=mysqli_query($conn,"SELECT doctorID
FROM doctor WHERE doctorEmail=".’doctorEmail’);
$Row=mysqli_fetch_assoc($req);
$id=$Row[’doctorID’];
$res=mysqli_query($conn,"SELECT * FROM doctor WHERE
doctorID=’$id’");
$userRow=mysqli_fetch_assoc($res);

?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible"
content="IE=edge">
<meta name="viewport"
content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<title>Welcome Dr <?php echo $userRow[’doctorFirstName’];?>
<?php echo $userRow[’doctorLastName’];?></title>
<!-- Bootstrap Core CSS -->
<!-- <link href="assets/
css/bootstrap.css" rel="stylesheet"> -->
<link href="assets/css/material.css" rel="stylesheet">
<!-- Custom CSS -->
<link href="assets/css/sb-admin.css" rel="stylesheet">
<link href="assets/css/time/

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 13

bootstrap-clockpicker.css" rel="stylesheet">
<link href="assets/css/style.css" rel="stylesheet">
<link href="assets/font-awesome
/css/font-awesome.css" rel="stylesheet">

</head>
<body>
<div id="wrapper">

<!-- Navigation -->


<nav class="navbar navbar-inverse navbar-fixed-top"
role="navigation">
<!-- Brand and toggle get
grouped for better mobile display -->
<div class="navbar-header">
<button type="button"
class="navbar-toggle" data-toggle="collapse"
data-target=".navbar-ex1-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand"
href="doctordashboard.php">
Welcome Dr <?php echo
$userRow[’doctorFirstName’];?>
<?php echo $userRow[’doctorLastName’];?></a>
</div>
<!-- Top Menu Items -->
<ul class="nav navbar-right top-nav">

<li class="dropdown">
<a href="#" class="dropdown-toggle"
data-toggle="dropdown">

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 14

<i class="fa fa-user"></i>


<?php echo $userRow[’doctorFirstName’]; ?>
<?php echo $userRow[’doctorLastName’]; ?>
<b class="caret"></b></a>
<ul class="dropdown-menu">
<li>
<a href="#">
<i class="fa fa-fw fa-user">
</i> Profile</a>
</li>
<li>
<a href="#">
<i class="fa fa-fw fa-envelope"></i>
Inbox</a>
</li>
<li>
<a href="#">
<i class="fa fa-fw fa-gear"></i>
Settings</a>
</li>
<li class="divider"></li>
<li>
<a href="logout.php?logout">
<i class="fa fa-fw fa-power-off">
</i> Log Out</a>
</li>
</ul>
</li>
</ul>
<!-- Sidebar Menu Items -
These collapse to the responsive
navigation menu on small screens -->
<div class="collapse navbar-collapse
navbar-ex1-collapse">
<ul class="nav navbar-nav side-nav">
<li>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 15

<a href="doctordashboard.php">
<i class="fa fa-fw fa-dashboard">
</i> Dashboard</a>
</li>
<li>
<a href="addschedule.php">
<i class="fa fa-fw fa-table">
</i> Doctor Schedule</a>
</li>
<li class="active">
<a href="patientlist.php">
<i class="fa fa-fw fa-edit">
</i> Patient List</a>
</li>
</ul>
</div>
<!-- /.navbar-collapse -->
</nav>
<!-- navigation end -->

<div id="page-wrapper">
<div class="container-fluid">

<!-- Page Heading -->


<div class="row">
<div class="col-lg-12">
<h2 class="page-header">
Patient List
</h2>
<ol class="breadcrumb">
<li class="active">
<i class="fa fa-calendar">
</i> Patient List
</li>
</ol>
</div>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 16

</div>
<!-- Page Heading end-->

<!-- panel start -->


<div class="panel panel-primary filterable">

<!-- panel heading starat -->


<div class="panel-heading">
<h3 class="panel-title">
List of Patients</h3>

</div>
<!-- panel heading end -->

<div class="panel-body">
<!-- panel content start -->
<!-- Table -->
<table class="table table-hover
table-bordered">
<thead>
<tr class="filters">
<th><input type="text"
class="form-control"
placeholder="patient ID"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="Name"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="Password"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="ContactNo."

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 17

disabled></th>
<!-- <th><input type="text"
class="form-control"
placeholder="Email"
disabled></th> -->
<th><input type="text"
class="form-control"
placeholder="Gender"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="Status"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="Birthdate"
disabled></th>
<th><input type="text"
class="form-control"
placeholder="Address"
disabled></th>
</tr>
</thead>

<?php
$result=mysqli_query($conn,
"SELECT * FROM patient");

while ($patientRow=mysqli_fetch_array($result)) {

echo "<tbody>";
echo "<tr>";
echo "<td>" .

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 18

$patientRow[’patientID’] .
"</td>";
echo "<td>" . $patientRow
[’patientLastName’] ."</td>";
echo "<td>" .
$patientRow[’password’] .
"</td>";
echo "<td>" . $patientRow
[’patientMobileNum’] ."</td>";
// echo "<td>" . $patientRow
[’patientEmail’] . "</td>";
echo "<td>" . $patientRow
[’patientGender’] . "</td>";
echo "<td>" . $patientRow
[’patientMaritialStatus’]
."</td>";
echo "<td>" . $patientRow
[’patientDOB’] . "</td>";
echo "<td>" . $patientRow
[’patientPlace’] . "</td>";
echo "<form method=’POST’>";
echo "<td class=’text-center’>
<a href=’#’ id=’".$patientRow
[’patientEmail’]."’
class=’delete’>
<span class=’glyphicon
glyphicon-trash’
aria-hidden=’true’></span></a>
</td>";

}
echo "</tr>";
echo "</tbody>";
echo "</table>";
echo "<div class=’panel panel-default’>";
echo "<div class=’col-md-

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 19

offset-3 pull-right’>";
echo "<button class=’btn btn-primary’
type=’submit’ value=’Submit’ name=’submit’>
Update</button>";
echo "</div>";
echo "</div>";
?>
<!-- panel content end -->
<!-- panel end -->
</div>
</div>
<!-- panel start -->

</div>
</div>
<!-- /#wrapper -->

<!-- jQuery -->


<script src="assets/js/jquery.js"></script>
<script type="text/javascript">
$(function() {
$(".delete").click(function(){
var element = $(this);
var ic = element.attr("id");
var info = ’ic=’ + ic;
if(confirm("Are you sure you want to delete this?"))
{
$.ajax({
type: "POST",
url: "deletepatient.php",
data: info,
success: function(){
}
});

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 20

$(this).parent().parent().
fadeOut(300, function(){ $(this).remove();});
}
return false;
});
});
</script>

<!-- Bootstrap Core JavaScript -->


<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/bootstrap-clockpicker.js">
</script>

</body>
</html>

4.3 Database Design

4.3.1 Data Flow Diagram

Data flow diagram (DFD) is a graphical representation of the flow of the data through an informa-
tion system, modeling its process aspects. A DFD is often used as a preliminary step to create an
overview of the system, which can later be elaborated and it is also used for the visualization of
data processing (structured design).

• To construct data flow diagrams

– Arrows
– Circles
– Squares
– Open rectangle

• Certain rules to be followed :

– Arrows should not cross each other.


– Squares, circles and files must have names.
– Decomposed data flows must be balanced or all data flows on the decompose diagram
must reflect flows in the original diagram.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 21

– No two data flows, squares or circles can have the same name
– Draw all the data flows around the outside of the diagram.
– Choose meaningful names for data flows, process and data stores, use strong verbs
followed by nouns.
– Control information such as record contents, password and validation requirements are
not pertinent to a data flow diagram.

Level 0

Figure 4.1: DFD Level 0

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 22

Level 1

Figure 4.2: DFD Level 1

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 23

Chapter 5

Entity Relationship Diagram

Figure 5.1: ER Diagram

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 24

Chapter 6

IMPLEMENTATION, TESTING AND


VALIDATION

6.1 Implementation

Implementation is the stage in the project where the theoretical design is turned into a working
system and is giving confidence on the new system for the user that it will work efficiently and
effectively. It involves careful planning, investigation of the current system and its constraints
on implementation, design of methods to achieve the changeover, an evaluation, of change over
methods. Apart from planning major task preparing the implementation are education and training
of users. The more complex system being implemented, the more involved will be the system
analysis and the design effort required just for implementation. The implementation process begins
with preparing a plan for the implementation of the system. According to this plan, the activities
are to be carried out, decisions made regarding the equipment and resources and the additional
equipment has to be acquired to implement the new system. Implementation is the final and the
most important phase. The most critical stage in achieving a successful new system is giving the
users confidence that the new system will work and be effective. The system can be implemented
only after through testing is done and if it is found to be working according to the specification.
An implementation co-ordination committee based on policies of individual organization has been
appointed. The implementation process begins with preparing a plan for the implementation of the
system. This method also offers the greatest security since the old system can take over with the
errors are found or inability to handle certain type of transactions by while using the new system.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 25

6.2 Testing Methods

6.2.1 Unit testing

This is the first level of testing. In this different modules are tested against the specification
produces during the design of the modules. Unit testing is done during the coding phase and to
test the internal logic of the modules. It refers to the verification of single program module in
an isolated environment. Unit testing first focuses on the modules independently of one another
to locate errors. After coding each dialogue is tested and run individually. All necessary coding
where removed and it was ensured that all the modules are worked, as the programmer would
expect. Logical errors found where corrected. So, by working all the modules independently and
verifying the outputs of each module in the presence of staff we conducted that the programs was
functioning as expected

6.2.2 Integration testing

Data can be lost across an interface: one module can be adverse effort on another; sub functions
when combined may not produce the desired major functions. Integration testing is a systematic
testing for constructing the program structure. Conducting the tests is to uncover errors associated
within the interface. The objective is to take unit tested to modules and build a program structure.
All the modules are combined and tested as whole. Here correction is difficult because the vast
expenses of the entire program complicate the isolation of causes. Thus in the integration testing
step, all the errors uncovered are corrected for the next testing steps.

6.2.3 Blackbox testing

Black Box Testing also called behavioral testing, focuses on the functional requirement of soft-
ware. It is complementary approach that is likely to uncover a diffrent class of errors than whitebox
method. Black Box testing is done to findout the following information:

• Incorrect or missing functions

• Interface errors

• Errors or database access

• Performance error

• Termination error

The mentioned testing is carried out successfully for this application according to the user’s re-
quirement specification.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 26

6.2.4 Whitebox testing

White Box Testing sometimes called glass box testing is test case design method that goes the
control structure of the procedural design to derive test cases. Using white box testing methods,
the software engineer can derive test cases that:

• Guarantee that all independent paths with in a module have been exercise at least once.

• Exercise all logical decision on their true and false rides.

• Executes all loops at their boundaries and within their operational boundaries

• Exercise internal data structure to ensure their validity

6.3 Validation

The definition for the validation testing is that the validation succeeds when software functions in
a manner that can be reasonably expected by the customer. The expectations are defined in the
software requirements specifications. Validation criteria: The number of characters in the pass-
word must contain minimum of four characters. The password will be treated as invalid when the
number of characters in it is less than six. Our system, test whether the required fields are empty
or not. This system ensures that the fields must be filled and also ensure the minimum range of
some fields. After performing the validation testing, the next step is output testing of the proposed
system since no system could be usefuk if it does not produce the required output in the specified
format. The output generated or displayed by the system under consideration is tested asking the
users about the format required by then. Here, the output is considered into ways: one is on the
screen and the other is printed format. The output format on the screen is found to be correct as
the format designed according to the user needs. For the hard copy also, the output comes out as
specified by the user. Hence output testing does not result in any connection in the system

Registration Page with Validation

<?php
include ’C:\New xampp\htdocs
\mini project\doctor_patient\connection.php’;

if(isset($_POST[’Submit’])){
$fname=$_POST[’fname’];
$lname=$_POST[’lname’];

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 27

$dob=date(’y-m-d’, strtotime($_POST[’dob’]));
$mstatus=$_POST[’maritial’];
$pwd=$_POST[’pwd’];
$cpwd=$_POST[’cpwd’];
$place=$_POST[’place’];
$phno=$_POST[’mphone’];
$email=$_POST[’email’];
$gender=$_POST[’gender’];

if($pwd != $cpwd){

echo ’<script>alert("passwords does not


match,Please try again")</script>’;
}

else{
$query="INSERT INTO patient
( password, patientFirstName, patientLastName,
patientMaritialStatus, patientDOB, patientGender, patientPlace,
patientMobileNum, patientEmail) values
(’$pwd’,’$fname’,’$lname’,’$mstatus’,’$dob’,’$gender’,
’$place’,’$phno’,’$email’)";

if(mysqli_query($conn,$query))
{

echo ("<script LANGUAGE=’JavaScript’>


window.alert(’Register success.
Please Login to make an appointment.’);
window.location.href=’index.php’;
</script>");
}

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 28

else
{

echo ’<script>alert("User already


registered. Please try again")</script>’;
}

} //code by aryatechno
?>

<!doctype html>
<html lang="en">
<head>
<title>Register </title>
<meta charset="utf-8">
<meta name="viewport" content="width=
device-width, initial-scale=1, shrink-to-fit=no">

<link href="https://fonts.googleapis.com/css?
family=Lato:300,400,700&display=swap" rel="stylesheet">

<link rel="stylesheet" href="https://stackpath.


bootstrapcdn.com/font-awesome/4.7.0/css
/font-awesome.min.css">

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

</head>
<body class="img js-fullheight"
style="padding-left: 500px; background-image:
url(login1/images/img5.jpg);height: 450px;">

<div class="container">
<div class="row justify-content-center">

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 29

<h2 style="font-size: 41px;"


class="heading-section">Create an Account</h2>

</div>
<div class="row justify-content-center">
<div class="col-md-6 col-lg-4">
<div class="login-wrap p-0">

<form action="<?php $_PHP_SELF ?>"


class="signin-form" method="post">
<div class="form-group">
<input type="text" class=
"form-control" name="fname"
placeholder="First Name" required>
</div>
<div class="form-group">
<input type="text" class
="form-control" name="lname"
placeholder="Last Name" required>
</div>
<div class="form-group">
<input type="email"
class="form-control" name="email"
placeholder="Your Email" required>
</div>
<div class="form-group">
<input type="password"
id="password-field"
class="form-control" name="pwd"
placeholder="Password" required>

<span toggle="#password-field"
class="fa fa-fw fa-eye field-icon
toggle-password"></span>
</div>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 30

<div class="form-group">
<input type="password" id=
"confirm-pwd" class="form-control"
name="cpwd" placeholder="Confirm Password"
required>

<span toggle="#confirm-pwd" class=


"fa fa-fw fa-eye field-icon toggle-password">
</span>
</div>
<div class="form-group">
<input type="date" class=
"form-control" name="dob"
placeholder="Date of Birth" required>

&nbsp;&nbsp; Gender :&emsp


;<input type="radio" name="gender"
value="male">Male&emsp;
<input type="radio" name="gender"
value="female">Female
<select class="form-control" name="maritial">
<option>Choose Maritial status
</option>
<option>Single</option>
<option>Committed</option>
<option>Married</option>
<option>Divorced</option>
<option>Widowed</option>

</select>
</div>

<div class="form-group">
<input type="text" class=
"form-control" name="mphone"
placeholder="Your Mobile Number"

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 31

pattern="[1-9]{1}[0-9]{9}"required>

</div>
<div class="form-group">
<input type="text" class="form-control"
name="place" placeholder="Your Place" required>
</div>
<div class="form-group">
<button type="submit" name="Submit"
class="form-control btn btn-primary submit px-3">
Create Account</button>
</div>

</form>

</div>
</div>
</div>
</div>
</div>

<script src="login1/js/jquery.min.js"></script>
<script src="login1/js/popper.js"></script>
<script src="login1/js/bootstrap.min.js"></script>
<script src="login1/js/main.js"></script>

</body>
</html>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 32

Chapter 7

CONCLUSION

Through this project I aiming to provide an online system for patient to make appointment and
helps doctor to manage the appointment in online. System will make all the empty slots visibly
available to the patients, which are booked by the name of any particular patient. The system
makes it easy to manage doctor and their availability on various dates and timings. This allows
for an automated patient doctor handling system through an online interface.This project helps the
faculties to reduce waiting time of patient for getting token .Our project is only a humble venture
to satisfy the needs to manage the doctor appointment work. Several user friendly coding have also
adopted. .And by using this patient can easily book appointment and doctor can add patient records
to it.And can easily schedule his availability. The objective of the system is user friendly and it
can help the clinic to manage their appointments. The system helps to avoid making duplicate
appointments. Users can view available doctors and their timings and can make appointments .
This system is being identified as an appropriate method for managing doctor appointment.

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 33

Chapter 8

SCOPE FOR FUTURE


ENHANCEMENT

In this it can be summarized that the future scope of the project circles around maintaining infor-
mation regarding:

• We can give more advance software for Doctor Appointment System including more facili-
ties

• Now I make this system for a single doctor,in future we can expand to more doctors.

• And add blood donation module and organ donation module

• Create the master and slave database structure to reduce the overload of the database queries

• And add option for doctor to add prescription

• And add payment option in future

• And add option for video consultation

Implement the backup mechanism for taking backup of codebase and database on regular basis on
different servers 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 Doctor and
Appointment

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 34

APPENDICES

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 35

Appendix A

SCRUM PROCESS ARTIFACTS

A.1 Product Backlog

Product Estimate
Priority User story
backlog items (Hours)

Database cre- As an operations engineer, I want to be able to


1 24
ation store all customer information.

All Registred user must be able to login to the


2 Login page 3
system.

New user must be register to the system,then only


3 Register page 12
login.

4 Home Page Created the home page which the user sees first. 12

My Profile
5 User can view their profile. 2
page

Update Profile
6 User can edit their profile . 6
page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 36

Product Estimate
Priority User story
backlog items (Hours)

Check Avail- User can check the availability of doctor through


7 4
ability page this.

Appointment
8 User can make appointment through this . 20
page

About Doctor
9 User can see about the doctor through this . 8
page

Doctor Login The registred doctor must be login to the system


10 6
page .

Doctor Dash-
11 Doctor can view the appointment . 10
board page

Add Schedule
12 Doctor can add schedule for appointment . 12
page

PatientList Doctor can view all patients who are consulted


13 16
page by the doctor .

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 37

A.2 Scrum Meeting Details

Sl. Product shippable Important Deci-


Date Sprint backlog
No. Increment sions

discuss about vari-


1 22/11/2021 Problem identification Done
ous online system

Online Doctor Ap-


2 25/11/2021 Select a topic Done
pointment System

discuss about func-


3 29/11/2021 Requirement identification Done
tional requirements

Designing of Login Page and


4 6/01/2022 Done download template
Registration Page

Design profile
updation page ,
Designing of Home Page and adding Doctor
5 13/01/2022 Done
discuss about database availability page
and also creating
tables

Designing of Profile,Update
Profile,Check doctor Avail- Design about doc-
6 28/01/2022 ability ,Make appointment Done tor page and coding
page and discuss about cod- standard
ing

Adding doctor
Completion of Appointment scheduling page
7 14/02/2022 list,about doctor page and Done ,update appoint-
also discuss about validation ment Status and
check validation

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 38

Appendix B

TABLE STRUCTURE

SNo. Name Datatype Constraints Description


1 patientID Int UNIQUE Patient’s ID will be stored
2 password Varchar NOT NULL Patient’s password will be stored
3 patientFirstName Varchar NOT NULL Patient’s First Name will be stored
4 patientLastName Varchar NOT NULL Patient’s Last Name will be stored
5 patientMaritialStatus Varchar NOT NULL Patient’s Maritial Status will be stored
6 patientDOB Date NOT NULL Patient’s Date of Birth will be stored
7 patientGender Varchar NOT NULL Patient’s Gender will be stored
8 patientPlace Varchar NOT NULL Patient’s Place will be stored
9 patientMobileNum BigInt NOT NULL Patient’s Mobile Number will be stored
10 patientEmail Varchar PRIMARY KEY Patient’s Email will be stored

Table B.1: Patient table

SNo. Name Datatype Constraints Description


1 doctorID Int PRIMARY KEY doctor’s ID will be stored
2 password Varchar NOT NULL Doctor’s password will be stored
3 doctorFirstName Varchar NOT NULL Doctor’s First Name will be stored
4 doctorLastName Varchar NOT NULL Doctor’s Last Name will be stored
5 doctorDOB Date NOT NULL Doctor’s Date of Birth will be stored
6 doctorPlace Varchar NOT NULL Doctor’s Place will be stored
7 doctorMobileNum BigInt NOT NULL Doctor’s Mobile Number will be stored
8 doctorEmail Varchar NOT NULL Doctor’s Email will be stored

Table B.2: Doctor table

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 39

SNo. Name Datatype Constraints Description


1 scheduleID Int PRIMARY KEY Schedule ID will be stored
2 scheduleDate Date NOT NULL Date of Schedule will be stored
3 scheduleDay Varchar NOT NULL Day of Schedule will be stored
4 startTime Time NOT NULL Start Time of Schedule will be stored
5 endTime Time NOT NULL End Time of Schedule will be stored
6 bookAvail Date NOT NULL Booking Available/Not Available will be stored

Table B.3: Schedule table

SNo. Name Datatype Constraints Description


1 ReadingID Int PRIMARY KEY Reading ID will be stored
2 ReadingName Varchar NOT NULL Reading Name will be stored
3 ReadingUnit Varchart NOT NULL Reading Unit will be stored

Table B.4: ReadingType table

SNo. Name Datatype Constraints Description


1 RecordID Int PRIMARY KEY Record ID will be stored
2 patientEmail Varchar FOREIGN KEY Patient’s Email will be stored
3 Value Varchar NOT NULL Reading Value will be stored
4 ReadingID Int FOREIGN KEY Reading ID will be stored
5 Dates Date NOT NULL Appointment Date will be stored
6 appId Int FOREIGN KEY Appointment ID will be stored

Table B.5: Appointment table

SNo. Name Datatype Constraints Description


1 appId Int PRIMARY KEY Appointment ID will be stored
2 patientEmail Varchar FOREIGN KEY Patient’s Email will be stored
3 scheduleID Int FOREIGN KEY Schedule ID will be stored
4 appSymptom Varchar NOT NULL Symptoms for Appointment will be stored
5 appComment Varchar NOT NULL Comment for Appointment will be stored
6 status Varchar NOT NULL Appointment’s Status will be stored

Table B.6: Record table

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 40

Appendix C

SAMPLE SCREENSHOTS

Figure C.1: Home page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 41

Figure C.2: Patient Login page

Figure C.3: Patient Registration page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 42

Figure C.4: Check Availability page

Figure C.5: Contact page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 43

Figure C.6: About Doctor page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 44

Figure C.7: Patient Profile page

Figure C.8: Patient Profile Update page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 45

Figure C.9: Make Appointment page

Figure C.10: Patient Appointment page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 46

Figure C.11: Doctor Login page

Figure C.12: Doctor Dashboard page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 47

Figure C.13: Add Schedule page

Figure C.14: Patient List page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 48

Figure C.15: Doctor Profile page

Figure C.16: Doctor Profile Update page

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 49

Appendix D

Sample code

D.1 login.php

<?php
global $uname;
global $pwd;
?>

<?php
include ’C:\New xampp\htdocs\mini project\doctor_patient\
connection.php’;

if(isset($_POST[’Submit’])){
$uname=$_POST[’email’];
$pwd=$_POST[’pwd’];
$query="select * from patient where
patientEmail=’$uname’ and password=’$pwd’";
$res=mysqli_query($conn,$query);
$count=mysqli_num_rows($res);
if($count>0)
{
$row=mysqli_fetch_array($res);
header("Location:home.php");
?>
<script>
alert("Login successfully");

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 50

</script>
<?php
}
else
{
?>
<script type="text/javascript">
alert ("Login failed");
</script>
<?php
}
mysqli_close($conn);
}
?>
<!doctype html>
<html lang="en">
<head>
<title>Login </title>
<meta charset="utf-8">
<meta name="viewport" content="width=

device-width, initial-scale=1, shrink-to-fit=no">

<link href="https://fonts.googleapis.com/css
?family=Lato:300,400,700&display=swap" rel="stylesheet">

<link rel="stylesheet" href="https://stackpath.


bootstrapcdn
.com/font-awesome/4.7.0/css/font-awesome.min.css">

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

</head>
<body class="img js-fullheight" style="background-image:

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 51

url(login1/images/img2.webp);">
<section class="ftco-section">
<div class="container">
<div class="row justify-content-center">
<div class="col-md-6 text-center mb-5">
<h2 class="heading-section">Login </h2>
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-6 col-lg-4">
<div class="login-wrap p-0">
<h3 class="mb-4 text-center">Have an account?</h3>
<form action="" class="signin-form" method="post">
<div class="form-group">
<input type="email"
class="form-control" name="email"
placeholder="Email" required>
</div>
<div class="form-group">
<input id="password-field" type=
"password" class="form-control" name=
"pwd" placeholder="Password" required>
<span toggle="#password-field"
class="fa fa-fw fa-eye field-icon toggle-password">
</span>
</div>
<div class="form-group">
<button type="submit" name="Submit"
class="form-control btn btn-primary
submit px-3">Sign In</button>
</div>
<div class="form-group d-md-flex">
<div class="w-50">

</div>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 52

<div class="w-50 text-md-right">


<a href="#" style="color: #fff"></a>
</div>
</div>
</form>
<p class="w-100 text-center">
Don’t have account
<a href="register.php">click here</a></p>
<p class="w-150 text-center"
style="color:white;"> Back to Home
<a href="index.php">click here</a>
</p>
<div class="social d-flex text-center">

</div>
</div>
</div>
</div>
</div>
</section>

<script src="login1/js/jquery.min.js"></script>
<script src="login1/js/popper.js"></script>
<script src="login1/js/bootstrap.min.js"></script>
<script src="login1/js/main.js"></script>

</body>
</html>

D.2 Appointment.php

<?php
session_start();
include ’C:\New xampp\htdocs\mini project\
doctor_patient\connection.php’;

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 53

if (isset($_GET[’scheduleDate’]) && isset($_GET[’appid’])) {


$appdate =$_GET[’scheduleDate’];
$appid = $_GET[’appid’];
}
// on b.icPatient = a.icPatient
$res = mysqli_query($conn,"SELECT a.*, b.* FROM
doctorschedule a INNER JOIN patient b
WHERE a.scheduleDate=’$appdate’ AND
scheduleID=$appid AND b.patientEmail=".’patientEmail’);
$userRow=mysqli_fetch_assoc($res);

//INSERT
if (isset($_POST[’appointment’])) {
$patientEmail = mysqli_real_escape_string($conn,
$userRow[’patientEmail’]);
$scheduleid = mysqli_real_escape_string($conn,$appid);
$symptom = mysqli_real_escape_string($conn,$_POST[’symptom’]);
$comment = mysqli_real_escape_string($conn,$_POST[’comment’]);
$avail = "notavail";

$query = "INSERT INTO appointment


( patientEmail , scheduleID , appSymptom , appComment )
VALUES ( ’$patientEmail’, ’$scheduleid’, ’$symptom’, ’$comment’) ";

//update table appointment schedule


$sql = "UPDATE doctorschedule SET
bookAvail = ’$avail’ WHERE scheduleID = $scheduleid" ;
$scheduleres=mysqli_query($conn,$sql);
if ($scheduleres) {
$btn= "disable";
}

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 54

$result = mysqli_query($conn,$query);
// echo $result;
if( $result )
{
?>
<script type="text/javascript">
alert(’Appointment made successfully.’);
</script>
<?php

header("Location: patientapplist.php");
}
else
{
echo mysqli_error($conn);
?>
<script type="text/javascript">
alert(’Appointment booking fail. Please try again.’);
</script>
<?php
header("Location: patient/patients.php");
}
//dapat dari generator end
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,
initial-scale=1">
<!-- The above 3 meta tags
*must* come first in the head; any other
head content must come *after* these tags -->

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 55

<title>Make Appoinment</title>
<link href="css/bootstrap2.min.css" rel="stylesheet">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">

<link rel="stylesheet" href="https://formden.com


/static/cdn/font-awesome/4.4.0/css/font-awesome.min.css" />

</head>
<body>
<!-- navigation -->
<?php
include ’C:\New xampp\htdocs\mini project\
doctor_patient\header.php’;
?>
<header style="background-color: white;">
<nav class="navbar navbar-expand-lg navigation" id="navbar" >
<div class="container" >
<a class="navbar-brand" href="home.php"
style="margin-top: 0px;" >
<img src="images/logo2.png" alt="" class="img-fluid">
</a>

<button class="navbar-toggler collapsed"


type="button" data-toggle="collapse"
data-target="#navbarmain" aria-controls="navbarmain"
aria-expanded="false" aria-label="Toggle navigation">
<span class="icofont-navigation-menu"></span>
</button>

<div class="collapse navbar-collapse" id="navbarmain">


<ul class="navbar-nav ml-auto">
<li class="nav-item active">
<a class="nav-link" href="home.php">Home</a>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 56

</li>
<li class="nav-item"><a class="nav-link"
href="about.<?php ?>">Appointments</a></li>
<li class="nav-item"><a class="nav-link"
href="contact.php">Contact</a></li>
</ul>
</div>
</div>
</nav>
</header>

<!-- navigation -->


<div class="container">
<section style="padding-bottom: 50px;
padding-top: 50px;background-color: peachpuff;">
<div class="row">
<!-- start -->
<!-- USER PROFILE ROW STARTS-->
<div class="row">
<div class="col-md-3 col-sm-3"
style="padding-left: 50px
;padding-right: 0px;">

<div class="user-wrapper">

<div class="description">
<h4 style="font-size: 2.3rem;
margin-bottom: 2.5rem;">
<?php echo $userRow
[’patientFirstName’]; ?>
<?php echo
$userRow[’patientLastName’]; ?></h4>

<hr />
<a href="patientupdatetry.php?

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 57

patientEmail=<?php echo
$userRow[’patientEmail’]; ?>">
<button type="button"
class="btn btn-primary"
data-toggle="modal"
style="font-size: 1rem;" >
Update Profile</button></a>

</div>
</div>
</div>

<div class="col-md-9 col-sm-9 user-wrapper">


<div class="description">

<div class="panel panel-default"


style="min-width: 700px;">
<div class="panel-body" >

<form class="form" role="form"


method="POST" accept-charset="UTF-8">
<div class="panel panel-default">
<div class="panel-heading">
Patient Information</div>
<div class="panel-body">

Patient Name:
<?php echo
$userRow[’patientFirstName’] ?>
<?php echo
$userRow[’patientLastName’] ?>
<br>
Patient Email:
<?php echo $userRow[’patientEmail’] ?>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 58

<br>
Contact Number:
<?php echo
$userRow[’patientMobileNum’] ?>
<br>
Address: <?php echo
$userRow[’patientPlace’] ?>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
Appointment Information</div>
<div class="panel-body">
Day: <?php echo
$userRow[’scheduleDay’] ?>
<br>
Date: <?php echo
$userRow[’scheduleDate’] ?>
<br>
Time: <?php echo
$userRow[’startTime’] ?> -
<?php echo
$userRow[’endTime’] ?><br>
</div>
</div>

<div class="form-group">
<label for="recipient-name"
class="control-label">
Symptom:</label>
<input type="text"
class="form-control"
name="symptom" required>
</div>
<div class="form-group">
<label for="message-text"

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 59

class="control-label">Comment:</label>
<textarea class="form-control"
name="comment" required></textarea>
</div>
<div class="form-group" >
<center>
<input type="submit"
name="appointment"
id="submit" class="btn btn-primary"
value="Make Appointment"
style="font-size: 1rem;"></center>
</div>
</form>
</div>
</div>

</div>

</div>
</div>
<!-- USER PROFILE ROW END-->
<!-- end -->
<script src="assets/js/jquery.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
</body>
</html>

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Online Doctor Appointment System 60

Bibliography

[1] First Lessons in LATEX, by Dr. V N Krishnachandran, Vidya Academy of Science & Technol-
ogy, Thrissur - 680 501, 2011.

[2] Succeeding With Agile Software Development Using Scrum, by Mike Cohn

[3] PHP: The Complete Reference, by Steven Holzner

[4] Web Development using PHP, by Rajinder Kumar

[5] HTML and CSS: The Complete Reference, Fifth Edition, by Thomas Powell

[6] HTML and CSS: Design and Build Websites, by Jon Duckett

[7] Concepts Of Advance DBMS, by Saklani Ashis , Vishal Gupta

[8] MYSQL: THE COMPLETE REFERENCE, by Vikram Vaswani

[9] Database Management Systems , by L. Mathu Krithigha Venkatesh

[10] Beginning PHP and MySQL: From Novice to Professional , by Kromann, Frank M

[11] Software Engineering , by Pearson

Department of Computer Applications, Vidya Academy of Science & Technology, Thrissur


Department of Computer Applications
Vidya Academy of Science & Technology
Thalakkottukara, Thrissur - 680 501
(http://www.vidyaacademy.ac.in)

You might also like