A
Project Report
On
“ Life Saviour ”
Submitted by
Mr. Koulaskar Shivam Sandeep
Mr. Ade Anil Shankar
Mr. Korpakwad Shivam Sainath
Department of
COMPUTER ENGINEERING
GRAMIN TECHNICAL AND MANAGEMENT CAMPUS,
VISHNUPURI NANDED – 431606
ACADEMIC YEAR 2024-25
A
Project Report
On
“Life Saviour”
Submitted by
Mr. Koulaskar Shivam Sandeep
Mr. Ade Anil Shankar
Mr. Korpakwad Shivam Sainath
Guided by
Mrs. Bhojankar M. N.
In particular fulfilment for the award of the diploma in
COMPUTER ENGINEERING
GRAMIN TECHNICAL AND MANAGEMENT CAMPUS,
VISHNUPURI NANDED – 431606
ACADEMIC YEAR 2024-25
CERTIFICATE
This is to certify that project entitled “ Life Saviour” being submitted by Mr. Koulaskar
Shivam Sandeep, Mr. Ade Anil Shankar, Mr. Korpakwad Shivam Sainath to “Maharashtra
State Board of Technical Education, Mumbai” as a partial fulfilment of award of Diploma in
Computer Engineering, is record of bonafede work carried out by them under my
supervision and guidance. The matter contain in this project work has not been submitted to
any other institute for award of any degree or diploma.
( ) ( )
Mrs. Bhojankar M. N.
Head of Department Project Guide
( )
Principal
PROJECT APPROVAL SHEET
Following team has done the appropriate work related to the “Life Saviour” in partial
fulfilment for the award of diploma in Computer Engineering of “MSBTE” and is being
submitted to Gramin
Polytechnic Vishnupuri, Nanded.
Team:
Mr. Koulaskar Shivam Sandeep
Mr. Ade Anil Shankar
Mr. Korpakwad Shivam Sainath
Guide:
Mr. Bhojankar M. N.
Date:
Place: Nanded
( ) ( )
Internal Examiner External Examiner
ACKNOWLEDGEMENT
We would like to thank our scheme, faculties and mentors for giving us the
opportunity to work under their guidance and help us in our final project. I would like to
thank our beloved principal Dr. Pawar V.S. who is the force behind this project. My sincere
thanks to Mr. Bhojankar M.N. as our internal project guide for giving us valuable inputs
and ideas right from the selection of topic for project till its successful completion.
I thank Mr. Wahi G.S. (HOD of Computer Department) for his ongoing support and
encouragement in every aspect Last but not the least entire staff of Department of Computer
Engineering for guiding their thoughts and vision.
The successful completion of our final project report would not have been possible
without the dedicated support from all our mentors, family and friends. Finally, yet
importantly I would like to express my heartfelt thanks to my beloved parents for their
blessings, my friends, and all those who supported me directly or indirectly for their help and
wishes for successful completion of this project.
1. Mr. Koulaskar Shivam Sandeep
2. Mr. Ade Anil Shankar
3. Mr. Korpakwad Shivam Sainath
LIFE SAVIOUR
The purpose of this project, titled "Life Savier ", is to build a dynamic, responsive,
and userfriendly web-based application using PHP and MySQL that allows people to
donate and request blood efficiently. In many emergency cases, the availability of blood
donors is crucial to saving lives. Unfortunately, traditional systems are slow, unorganized,
and difficult to access in critical moments.
This application aims to bridge the gap between blood donors and patients in need by
providing a centralized platform where:
• Donors can register and list their availability.
• Patients or relatives can request specific blood groups.
• Admins can manage users and ensure that verified data is maintained.
Advantages:
• Quick Access to Donors.
• Centralized and Accessible Platform.
• Organized Donor Information.
• Verified and Managed by Admins.
• User-Friendly and Responsive Interface.
Disadvantages:
• Dependent on Internet Access
• Relies on User Participation
• No Location Tracking
• Data Accuracy Depends on Users
INDEX
Chapter No. Name of the Title Page No.
1. Introduction
1.1 Aim of Project 1
1.2 Project Analysis 1
1.3 Scope of project 2
1.4 Objective 2
1.5 Features 3
1.6 Module 3-5
1.7 Software Requirement 5
1.8 Hardware Requirement 5
2. Literature Survey
2.1 Introduction 6
2.2 Technologies Used 6-7
3. System Requirement Specifications
3.1 Hardware Requirements 8
3.2 Software Requirements 9
4. System Design
4.1 Design Document 10
4.2 E-R Diagram 11 - 12
4.3 Data Flow Diagram 13 - 14
4.4 Undefined Modeling Diagram 15 - 16
4.5 Use Case Diagram 16 - 18
4.6 Data Flow Diagram 18
4.7 Activity Diagram 18
4.8 Class Diagram 18
5. System Implementation
5.1 Home Page 19 - 23
5.2 Login P age 24 - 27
5.3 Request Page 28 - 34
5.4 Delete Page 35 - 39
5.5 Donation Data Page 36 - 43
5.6 Edit Information 44 - 52
5.7 Join Verification Page 53 - 56
5.8 Request Page 57 - 63
5.9 64 - 69
6. Debugging Stategies and Test Cases
6.1 Testing 70
6.2 Testing Objectives 70
6.3 Level of Testing 70
6.4 Types of Testings 71 - 73
6.5 White Box Testing 73
6.6 Test Cases 74
6.7 Emergency Call Module 75
7. Advantages 76 - 77
8. Conclusions and Data References 78
9. Data References 79
10. References 80
Life Saviour 2024-25
CHAPTER 1
INTRODUCTION
1.1 AIM OF THE PROJECT:
In today’s fast-paced world, timely access to safe and compatible blood can be the
deciding factor between life and death during medical emergencies. However, traditional
methods of sourcing blood such as contacting hospitals, blood banks, or relying on word of
mouth are often slow, inefficient, and lack real-time accessibility. To address this critical
issue, we present Life Saviour, a web-based application developed using PHP and MySQL,
designed to connect blood donors and recipients through a centralized and user-friendly
platform.
Life Saviour serves as a digital bridge between people willing to donate blood and
those urgently in need. Donors can register their details, specify their blood group, and
indicate availability, while patients or their relatives can post requests for specific blood
types. An admin panel ensures that all user data is verified, organized, and monitored to
maintain the integrity of the platform.
With features like quick donor search, responsive design for easy access across
devices, and a simple interface, Life Saviour aims to streamline the blood donation process,
making it more efficient and reliable in emergency situations.
1.2 PROJECT ANALYSIS:
The Life Saviour project is designed to address the critical need for a reliable and
accessible blood donation system. This analysis breaks down the project from different
perspectives to better understand its objectives, users, functionalities, and limitations.
1. Problem Statement
There is a lack of an organized and accessible system for finding blood donors in
emergency situations. Traditional methods are time-consuming, disorganized, and often
ineffective. Patients and their families struggle to connect with suitable donors quickly,
especially during urgent medical crises.
2. Proposed Solution
Life Saviour provides a web-based platform that connects blood donors with recipients
efficiently. It leverages a centralized database and dynamic web interface to simplify the
process of donating and requesting blood. The system ensures that both donors and patients
can easily register, search, and communicate through the platform.
Gramin Polytechnic Vishnupuri, Nanded. Page 1
Life Saviour 2024-25
1.3 SCOPE OF THE PROJECT:
The Life Saviour project aims to create a comprehensive web-based system that
simplifies and speeds up the process of blood donation and blood request management. The
primary goal is to provide an accessible, centralized platform that connects willing blood
donors with patients in need, particularly in emergency situations. This scope document
outlines the boundaries, objectives, capabilities, and limitations of the system in its current
version.
1. Purpose of the Project
The purpose of this project is to solve the real-world problem of delayed blood access
by providing an online platform that makes it easy for donors to register and for patients to
find matching donors quickly. It bridges the gap between demand and supply in a
streamlined, digitally organized manner.
2. Functional Scope
The system will consist of three core user roles: Donors, Recipients
(Patients/Relatives), and Administrators.
a. Donor Features
Register with personal details, contact information, and blood group.
Update or modify availability status.
View blood request notifications
1.4 OBJECTIVES:
To provide a digital platform for blood donation and requests.
To maintain a reliable and verified database of blood donors.
To reduce the time taken in locating suitable donors.
To provide an emergency alert system for urgent needs.
To streamline the blood request and donation process.
Gramin Polytechnic Vishnupuri, Nanded. Page 2
Life Saviour 2024-25
1.5 FEATURES:
Donor Registration and Availability Status
Patient Blood Request Form
Admin Dashboard for Management
Emergency Request Highlighting
Search Donors by Location and Blood Group
Login and Authentication for Users
Notification or alert system for emergency cases
1.6 MODULE:
1. User Registration & Login
Users (donors or recipients) can register and log in.
Form validation, password encryption (hashing), and session creation.
2. Blood Request Module
Users can submit requests for blood.
The form includes group, location, urgency, and notes.
Admin or donors can view pending requests.
3. Search Donors Module
Anyone can search for donors based on blood group and location.
Displays a filtered list with contact info (email or phone)
4. Admin Panel
Admin logs in securely to manage:
All users and requests
Approvals and blocking
Contact messages
Gramin Polytechnic Vishnupuri, Nanded. Page 3
Life Saviour 2024-25
5. Contact Us Module
Visitors can send feedback or queries using a form.
Messages are stored in the database and shown to the admin.
6. Logout Functionality
Users and admins can securely log out of the system to end the session
Frontend Design Explanation
The frontend of the Life Savier Blood
Donation system is built to be responsive, accessible, and modern using
HTML, CSS, JavaScript, and Bootstrap
5. Homepage
Features a navigation bar with links (Home, About, Contact, Login).
Includes a banner with a CTA (Call to Action) like
“Become a Donor Today!”
Sections for mission statement, featured donors, and benefits of donation.
Registration / Login Pages
Clean and simple form layout using Bootstrap forms.
Validations (e.g., email format, password length, required fields).
Blood Request Page
Allows users to request a specific blood group.
Dropdowns and text areas for details.
Success message on submission.
Search Donors Page
Search bar and filters (Blood group, City).
Grid or table display of matching donors.
Includes contact info (email, phone).
Gramin Polytechnic Vishnupuri, Nanded. Page 4
Life Saviour 2024-25
Contact Us Page
Bootstrap form for user queries.
Fields: Name, Email, Subject, Message.
Messages stored in the database.
Admin Dashboard
Sidebar with quick links to manage users, view requests, and inbox.
Tables to display users and requests with action buttons (Approve, Block, Delete).
1.7 SOFTWARE REQUIREMENTS:
Software Requirements:
Component Specification
Operating System Windows 10 / 11 / Linux
Web Browser Chrome / Firefox / Edge
Local server for PHP and MySQL XAMPP / WAMP
Text Editor VS Code / Sublime Text
Database MySQL
Server-side scripting PHP 7.x or 8.x
1.8 HARDWARE REQUIREMENTS:
Processor: Intel Core i5 or equivalent
RAM: Minimum 8GB
Storage: SSD with sufficient capacity
Network Interface: Gigabit Ethernet
Gramin Polytechnic Vishnupuri, Nanded. Page 5
Life Saviour 2024-25
CHAPTER 2
LITERATURE SURVEY
INTRODUCTION:
In medical emergencies, the availability of blood at the right time can mean the
difference between life and death. However, the traditional systems for sourcing blood are
often inefficient, unorganized, and slow. Patients or their relatives typically rely on hospitals,
blood banks, or word-of-mouth contacts, which may not be reliable during critical situations.
To overcome these challenges, the project titled "Life Saviour" has been developed. It
is a dynamic, responsive, and user-friendly web application built using PHP and MySQL. The
main objective of this system is to create a centralized platform that facilitates smooth and
quick communication between blood donors and patients in need.
This platform allows:
Donors to register their details and availability.
Patients or relatives to request specific blood groups.
Admins to manage user data, verify information, and oversee platform activity.
Life Saviour ensures that donor information is easily accessible, organized, and
available in real-time to reduce delays during emergencies. By leveraging technology, the
system not only streamlines the blood donation process but also encourages more people to
become regular blood donors. It is designed to be responsive across all devices, ensuring
accessibility anytime and anywhere with an internet connection.
This project represents a step forward in using digital tools to support healthcare
services and ultimately, to save lives.
TECHNOLOGIES USED:
1. Front-End Technologies
These technologies are used to create the user interface and ensure a responsive and
user-friendly experience:
HTML (HyperText Markup Language):
Used to structure the content of the web pages.
CSS (Cascading Style Sheets):
Used to style and design the website layout, making it visually appealing and
responsive.
JavaScript (Optional/Basic):
Used for client-side interactivity, form validations, and enhancing user experience.
Gramin Polytechnic Vishnupuri, Nanded. Page 6
Life Saviour 2024-25
2. Back-End Technologies
These technologies handle the logic, processing, and communication between the front
end and the database:
PHP (Hypertext Preprocessor):
Used as the server-side scripting language to handle user requests, form submissions,
data processing, and communication with the database.
3. Database MySQL:
A relational database management system used to store and manage data such as donor
information, blood requests, and admin records. It ensures structured and efficient data
handling.
4. Web Server
Apache (via XAMPP or WAMP):
Used as the local server to run the PHP application during development and testing.
5. Development Tools
XAMPP / WAMP:
A local development environment that includes Apache, MySQL, and PHP. It allows
developers to build and test the application on their own systems.
Text Editor / IDE (e.g., VS Code, Sublime Text):
Used to write and edit the source code of the application.
Web Browser (e.g., Chrome, Firefox):
Used to run and test the web application interface.
6. Optional (Future Enhancements)
These tools and technologies can be integrated in the future for added functionality:
Google Maps API – for location-based donor searches.
Email/SMS APIs – for sending alerts or notifications.
Bootstrap – for advanced responsive UI components.
Gramin Polytechnic Vishnupuri, Nanded. Page 7
Life Saviour 2024-25
CHAPTER 3
SYSTEM REQUIREMNT SPECIFICATIONS
3.1 Hardware Requirement:
The Life Saviour web application is developed using a combination of open-source and
easily accessible software tools. These tools are essential for creating, testing, running, and
managing the application efficiently. The software requirements can be categorized based on
the development environment and the end-user environment.
Processor:
A system with at least an Intel Pentium i3 processor or higher is recommended for
running the Life Saviour application during development and hosting. This ensures that the
server-side operations and browser-based activities run smoothly without lag.
Ram Capacity :
A minimum of 4 GB RAM is required for development environments to handle local
server tools like XAMPP/WAMP, browsers, and code editors simultaneously. For general
users accessing the website, 2 GB RAM is sufficient to load and navigate the web pages
effectively.
Hard Disk Space :
The system should have at least 250 GB of hard disk space or an SSD with 128 GB
capacity. This space is essential for storing source code, databases, backups, and all associated
files needed for development, testing, and deployment.
Display:
A monitor with a minimum resolution of 1366 × 768 pixels is recommended. A
larger and higher-resolution screen improves visibility and helps in designing and
testing responsive web layouts effectively.
Keyboard and Mouse :
A standard 104 or 108-key keyboard and an optical mouse are essential input devices.
These are necessary for coding, data entry, and navigating through the development and
admin interfaces.
Internet Connection:
A stable broadband or Wi-Fi connection is crucial for downloading dependencies,
accessing online libraries, hosting the application, and enabling real-time use of the platform
by donors and recipients.
Optional – Printer (for reports):
In case physical reports of donor lists or request logs are needed, a basic laser or inkjet
printer may be used to print records from the admin panel.
Gramin Polytechnic Vishnupuri, Nanded. Page 8
Life Saviour 2024-25
3.2 Software Requirement:
The software requirements outlined for Life Saviour are critical considerations in
ensuring the compatibility and effectiveness of the chosen software package. Here's an
elaboration on each requirement:
Operating System:
The Life Saviour application is compatible with Windows 10/11, Linux distributions
(like Ubuntu), or macOS. These operating systems provide the required stability, support, and
compatibility for running development tools such as PHP, MySQL, and Apache.
Web Server Package ( XAMPP/WAMP ) :
A web server environment such as XAMPP or WAMP is required to simulate a server
on the local machine. These packages come bundled with Apache (web server), PHP
(scripting engine), and MySQL (database engine) — all essential for running and testing the
application locally.
PHP Interpreter :
The server-side logic of the application is written in PHP (version 7.0 or higher). The
PHP interpreter processes form submissions, handles database queries, and generates dynamic
content based on user inputs.
MySQL Database Management System:
Life Saviour uses MySQL as the backend database to store and manage donor records, blood
requests, user credentials, and admin data. It is integrated with PHP to allow secure and
efficient data handling.
Code Editor/TDE :
A source code editor such as Visual Studio Code, Sublime Text, or Notepad++ is
required for writing and managing PHP, HTML, CSS, and JavaScript code. These editors
offer syntax highlighting, auto-complete, and extensions that simplify development.
Web Browser:
A modern web browser such as Google Chrome, Mozilla Firefox, or Microsoft Edge is
needed to access and test the application during development and deployment. These browsers
support HTML5 and CSS3 standards required by the Life Saviour user interface.
phpMyAdmin (Database GUI Tool):
phpMyAdmin is a browser-based tool used to manage MySQL databases with a
graphical interface. It simplifies database tasks such as creating tables, executing queries, and
managing records without using raw SQL commands.
Gramin Polytechnic Vishnupuri, Nanded. Page 9
Life Saviour 2024-25
CHAPTER 4
SYSTEM DESIGN
4.1 DESIGN DOCUMENT:
The entire system is projected with a physical diagram which specifics the actual
storage parameters that are physically necessary for any database to be stored on to the disk.
The overall systems existential idea is derived from this diagram.
The relation upon the system is structure through a conceptual ER-Diagram, which not
only specifics the existential entities but also the standard relations through which the system
exists and the cardinalities that are necessary for the system state to continue.
ER DIAGRAM
Gramin Polytechnic Vishnupuri, Nanded. Page 10
Life Saviour 2024-25
4.2 ER-DIAGRAM:
The entity Relationship Diagram (ERD) depicts the relationship between the data
objects. The ERD is the notation that is used to conduct the date modeling activity the
attributes of each data object noted is the ERD can be described resign a data object
descriptions.
Entities & Attributes:
1. User
user_id (PK)
name
email
password
role (donor, recipient, admin, hospital)
blood_group
location
Contact
2. Request
request_id (PK)
requester_id (FK → User)
blood_group
units_needed
location
date
Status
3. Donation
donation_id (PK)
donor_id (FK → User)
recipient_id (FK → User)
date
status
Gramin Polytechnic Vishnupuri, Nanded. Page 11
Life Saviour 2024-25
4. Blood_Stock
stock_id (PK)
blood_group
quantity
hospital_id (FK → User)
Gramin Polytechnic Vishnupuri, Nanded. Page 12
Life Saviour 2024-25
DATA FLOW DIAGRAM FOR LIFE SAVIOUR
Gramin Polytechnic Vishnupuri, Nanded. Page 13
Life Saviour 2024-25
4.3 DATA FLOW DIAGRAM (DFD) :
The DFD is also called as bubble chart. It is a simple graphical formalism that can be
used to represent a system in terms of input data to the system, various processing carried out
on this data, and the output data is generated by this system.
The data flow diagram (DFD) is one of the most important modeling tools. It is used to
model the system components. These components are the system process, the data used by the
process, an external entity that interacts with the system and the information flows in the
system.
DFD shows how the information moves through the system and how it is modified by
a series of transformations. It is a graphical technique that depicts information flow and the
transformations that are applied as data moves from input to output
DFD is also known as bubble chart. A DFD may be used to represent a system at any
level of abstraction. DFD may be partitioned into levels that represent increasing information
flow and functional detail.
Gramin Polytechnic Vishnupuri, Nanded. Page 14
Life Saviour 2024-25
UNIFIED MODELING LANGUAGE DIAGRAMS (UML)
Gramin Polytechnic Vishnupuri, Nanded. Page 15
Life Saviour 2024-25
4.4 UNIFIED MODELING LANGUAGE DIAGRAMS (UML) :
UML Diagrams (Short)
Gramin Polytechnic Vishnupuri, Nanded. Page 16
Life Saviour 2024-25
1. Use Case Diagram
Shows users (Donor, Admin, etc.) and what they can do (Donate, Request, Approve).
2. Class Diagram
Shows system structure: classes like User, Request, Donation with attributes and
functions.
3. Sequence Diagram
Shows step-by-step process (e.g. Requesting blood and getting a response).
4. Activity Diagram
Shows flow of actions (e.g. Donor logs in → donates → done).
5. Deployment Diagram
Shows setup: Browser → PHP Server → MySQL Database
4.5 USE CASE DIAGRAM
Actors:
Donor
Recipient
Admin
Hospital
✅ Use Cases (Functions):
Register/Login
Request Blood
Donate Blood
Manage Blood Stock
Approve Requests
View Blood Availability
🔄 Example Relationships:
Donor → Donate Blood
Gramin Polytechnic Vishnupuri, Nanded. Page 17
Life Saviour 2024-25
Recipient → Request Blood
Hospital → Request Stock
Admin → Approve Requests, Manage Stock
4.5.1 Contents
Contents of Use Case Diagram
The Use Case Diagram describes the system's functionality and interactions between
users (actors) and the system. Here are the typical contents:
1. Actors
Donor: User who gives blood.
Recipient: User who needs blood.
Admin: Manages users, approves requests, and manages blood stock.
Requests blood from the system for patients.
2. Use Cases
Register/Login: Actors create an account or log into the system.
Request Blood: Recipient or Hospital requests blood based on blood group.
Donate Blood: Donor offers blood to the system.
Manage Blood Stock: Admin manages the available blood supply.
Approve Requests: Admin approves or rejects donation requests.
View Blood Availability: All users can view available blood types.
3. Relationships
Association: Links actors to use cases (e.g., Donor → Donate Blood).
Include: Indicates a use case that is always part of another (e.g., "Login" included in
"Register").
Extend: Shows optional functionality added to a use case (e.g., "View History"
extending "Request Blood").
A generalization is a specialization / generalization relationship in which objects of
the specialized element (child) are substitutable for objects of the generalized element
(parent). Graphically, a generalization relationship is rendered as a solid line with a hollow
arrow head pointing to the parent.
Gramin Polytechnic Vishnupuri, Nanded. Page 18
Life Saviour 2024-25
Generalization
Fig.4.5(d) Generalization
4.6 Data Flow Dig.
➢ Trusty-Talk
➢ Lifelink
4.7 Activity Diagram
➢ Trusty Talk
➢ Lifelink
➢ Emergency call
4.8 Class Diagram
➢ Emergency Module
➢ Location Module
CHAPTER 5
SYSTEM IMPLEMENTION
Gramin Polytechnic Vishnupuri, Nanded. Page 19
Life Saviour 2024-25
5.1 Home page:
import 'dart:io'; import <?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location: ../index.php");
}
if (!isset($_COOKIE['user'])) {
header("location: login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM admin where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: login.php");
}
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location: login.php");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Admin Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
Gramin Polytechnic Vishnupuri, Nanded. Page 20
Life Saviour 2024-25
<link rel="stylesheet" type="text/css"
href="../css/panelstyle.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/cs
s/font-awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life
Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Live Saving
Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user']))
{echo "<form action=\"\" method=\"post\"> <button
type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome">
<div class="sidebar">
<ul>
<li><a href="index.php" class="active">Home</a></li>
<li><a href="editinfo.php">Update User
Information</a></li>
<li><a href="requests.php">Blood Requests</a></li>
<li><a href="joiningVerification.php">Donor
Verification</a></li>
Gramin Polytechnic Vishnupuri, Nanded. Page 21
Life Saviour 2024-25
<li><a href="updatepwd.php" >Change
Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<h3>Admin Dashboard | Welcome <?php echo $rows['uname']
?>
</h3>
<div class="panelhomediv">
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0
1800 5.8" preserveAspectRatio="none">
<path class="elementor-shape-fill" d="M5.4.4l5.4
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that
connects blood searchers with voluntary blood donors in a moment
through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook
fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-
2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-
2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a
href="/policy">Privacy Policy</a>
</div>
</div>
Gramin Polytechnic Vishnupuri, Nanded. Page 22
Life Saviour 2024-25
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body></html>
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 23
Life Saviour 2024-25
5.2 Login Page
Gramin Polytechnic Vishnupuri, Nanded. Page 24
Life Saviour 2024-25
<?php
include "../db-connect.php";
//session_start();
$error = "";
if (isset($_COOKIE['user'])) {
header("location: index.php");
}
if (isset($_POST['submit'])) {
$email = $_POST['email'];
$password = $_POST['pwd'];
$password = md5($password);
$sql = "SELECT * FROM admin WHERE email='$email' AND password='$password'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// $_SESSION['user'] = 1;
setcookie("user", $_POST['email'], time() + 60 * 60 * 24, "/");
header("location: index.php");
} else {
$error = "Incorrect email or password<br><br>";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Login | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/log.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/
font-awesome.min.css" />
</head>
<body>
<div class="topnav">
Gramin Polytechnic Vishnupuri, Nanded. Page 25
Life Saviour 2024-25
<li><a href="index.php" class="navlogo">Life Saviour</a></li>
<li><a href="index.php">Home</a></li>
<li><a href="about-us.php">About Us</a></li>
<li><a href="search-donors.php">Search Donors</a></li>
<li><a href="emergency.php">Live Saving Contacts</a></li>
<li><a href="login.php">Login</a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="loginf">
<center>
<form action="" method="POST">
<h1>L O G I N</h1>
<span style="color: red; font-size: 15px;"><?php echo "$error"; ?></span>
<input type="email" placeholder="Enter Username" name="email" required></br>
<input type="password" placeholder="Enter Password" name="pwd"
required></br>
<button type="submit" name="submit">Login</button><br>
</form>
</center>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8"
preserveAspectRatio="none">
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
Gramin Polytechnic Vishnupuri, Nanded. Page 26
Life Saviour 2024-25
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 27
Life Saviour 2024-25
5.3 Request Page
<?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
Gramin Polytechnic Vishnupuri, Nanded. Page 28
Life Saviour 2024-25
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location: ../index.php");
}
if (!isset($_COOKIE['user'])) {
header("location: login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM blood_requests";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: login.php");
}
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location: login.php");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Admin Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet" type="text/css" href="../css/adminstyle.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/
font-awesome.min.css" />
</head>
Gramin Polytechnic Vishnupuri, Nanded. Page 29
Life Saviour 2024-25
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Live Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome">
<div class="sidebar">
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="editinfo.php">Update User Information</a></li>
<li><a href="requests.php" class="active">Blood Requests</a></li>
<li><a href="joiningVerification.php">Donor Verification</a></li>
<li><a href="updatepwd.php" >Change Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<h3>Admin Dashboard | Welcome Admin</h3>
<div class="blood_request">
<table>
<tr>
<td>
Name
</td>
<td>
Gramin Polytechnic Vishnupuri, Nanded. Page 30
Life Saviour 2024-25
Message
</td>
<td>
Blood Group
</td>
<td>
Bags
</td>
<td>
Primary Contact
</td>
<td>
Email
</td>
<td>
when needed
</td>
</tr>
<tr>
<td height="19">
Abidur Rahman
</td>
<td>
emmergency blood need in dmc within 11 pm
</td>
<td>
B+
</td>
<td>
4 bag
</td>
<td>
Primary
Gramin Polytechnic Vishnupuri, Nanded. Page 31
Life Saviour 2024-25
</td>
<td>
Extra
</td>
<td>
<a href="mailto:skjdsk@gmail.com">skjdsk@gmail.com</a>
</td>
<td>
7/23/2021
</td>
</tr>
<tr>
<td>
<br>
</td>
<td>
<br>
</td>
<td>
<br>
</td>
<td>
<br>
</td>
<td>
1932322423
</td>
<td>
2742738487327
</td>
<td>
<br>
</td>
Gramin Polytechnic Vishnupuri, Nanded. Page 32
Life Saviour 2024-25
<td>
<br>
</td>
</tr>
</table>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8"
preserveAspectRatio="none">
</svg>
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
Gramin Polytechnic Vishnupuri, Nanded. Page 33
Life Saviour 2024-25
<br />
</div>
</div>
</body>
</html>
Gramin Polytechnic Vishnupuri, Nanded. Page 34
Life Saviour 2024-25
Output:
5. 4 Delete Page
Gramin Polytechnic Vishnupuri, Nanded. Page 35
Life Saviour 2024-25
<?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
function validate_data($val)
{
$val = trim($val);
$val = stripslashes($val);
$val = htmlspecialchars($val);
return $val;
}
$error = "";
$success = "";
$color = "";
$flag = 0;
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
} else {
if (isset($_POST['delete'])) {
$password = $_POST['pwd'];
$checkbox = $_POST['confirm_delete'];
Gramin Polytechnic Vishnupuri, Nanded. Page 36
Life Saviour 2024-25
if (empty($password) || empty($checkbox)) {
$error = "Fill out the required fields!<br>";
$color = "red";
} else {
$checkbox = validate_data($checkbox);
$password = validate_data($password);
$password = md5($password);
$sql = "DELETE FROM users where email='$email' and password ='$password' ";
$result = mysqli_query($conn, $sql);
if ($result) {
$success = "Account Deleted Successfully!<br>";
$color = "green";
$flag = 1;
} else {
$error = "Invalid Password!<br>";
$color = "red";
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
Gramin Polytechnic Vishnupuri, Nanded. Page 37
Life Saviour 2024-25
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\" class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search" aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" style="height: 500px;">
<div class="sidebar">
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php">Update Information</a></li>
<li><a href="request.php">Add Blood Request</a></li>
<li><a href="donation-date.php">Next Donation Date</a></li>
<li><a href="joiningVerification.php">Join as a Donor</a></li>
<li><a href="updatepwd.php">Change Password</a></li>
<li><a href="delete.php" class="active">Delete Account</a></li>
</ul>
</div>
<div class="deleteacc">
<h3>Delete Account</h3>
<form action="" method="post">
<span style="text-align:center; color:<?php echo "$color"; ?>; font-size: 15px;">
<?php echo "$error$success"; ?></span>
<input type="password" placeholder="Enter Password" name="pwd" class="password"
required><br>
<input type="checkbox" name="confirm_delete" class="checkbox" required> <label
for="confirm_delete">I agree to Delete my Account</label><br>
<button type="submit" name="delete">Delete</button>
</form>
</div>
</div>
Gramin Polytechnic Vishnupuri, Nanded. Page 38
Life Saviour 2024-25
<div class="footer">
<div class="elementor-shape" data-negative="false">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8"
preserveAspectRatio="none"
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with voluntary
blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body></html>
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 39
Life Saviour 2024-25
5. 5 Donation Data page
<?php
Gramin Polytechnic Vishnupuri, Nanded. Page 40
Life Saviour 2024-25
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
function validate_data($val)
{
$val = trim($val);
$val = stripslashes($val);
$val = htmlspecialchars($val);
return $val;
}
$error = "";
$success = "";
$color = "";
$flag = 0;
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
} else {
if (isset($_POST['update_dondate'])) {
$date = $_POST['date'];
if (empty($date)) {
Gramin Polytechnic Vishnupuri, Nanded. Page 41
Life Saviour 2024-25
$error = "Fill out the required fields!<br>";
$color = "red";
} else {
$date = validate_data($date);
$sql = "UPDATE users SET `next_donation_date`='$date' where email='$email' ";
$result = mysqli_query($conn, $sql);
if ($result) {
$success = "Date Updated Successfully!<br><br>";
$color = "green";
$flag = 1;
} else {
$error = "Something went wrong, please contact with Admin!<br>";
$color = "red";
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
Gramin Polytechnic Vishnupuri, Nanded. Page 42
Life Saviour 2024-25
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" style="height: 500px;">
<div class="sidebar">
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php">Update Information</a></li>
<li><a href="request.php">Add Blood Request</a></li>
<li><a href="donation-date.php" class="active">Next Donation Date</a></li>
<li><a href="joiningVerification.php">Join as a Donor</a></li>
<li><a href="updatepwd.php" >Change Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<div class="donate_date">
<h3 class="banner">Next Blood Donation Date</h3>
<form action="" method="post">
<span style="text-align:center; color:<?php echo "$color"; ?>; font-size: 15px;">
<?php echo "$error$success"; ?></span>
<input type="date" name="date" class="date" style="text-align: center;" min="<?php
echo date("Y-m-d"); ?>"><br>
<button type="submit" name="update_dondate">Update</button>
</form>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
Gramin Polytechnic Vishnupuri, Nanded. Page 43
Life Saviour 2024-25
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8"
preserveAspectRatio="none">
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Gramin Polytechnic Vishnupuri, Nanded. Page 44
Life Saviour 2024-25
5.6 Edit Information
<?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
function validate_data($val)
{
$val = trim($val);
$val = stripslashes($val);
$val = htmlspecialchars($val);
return $val;
}
$error = "";
$success = "";
$color = "";
$flag = 0;
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
} else {
if (isset($_POST['update'])) {
$first_name = $_POST['first_name'];
Gramin Polytechnic Vishnupuri, Nanded. Page 45
Life Saviour 2024-25
$last_name = $_POST['last_name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$age = $_POST['age'];
$gender = $_POST['gender'];
$blood_group = $_POST['blood_group'];
$district = $_POST['district'];
if (empty($first_name) || empty($last_name) || empty($email) || empty($phone) || empty($age) ||
empty($gender) || empty($blood_group) || empty($district)) {
$error = "Fill out the required fields!<br>";
$color = "red";
} else {
$first_name = validate_data($first_name);
$last_name = validate_data($last_name);
$email = validate_data($email);
$phone = validate_data($phone);
$age = validate_data($age);
$gender = validate_data($gender);
$blood_group = validate_data($blood_group);
$sql = "UPDATE users SET
`first_name`='$first_name',`last_name`='$last_name',`age`='$age',`gender`='$gender',`blood_gro
up`
='$blood_group',`district`='$district',`email`='$email',`phone`='$phone' where email='$email'";
$result = mysqli_query($conn, $sql);
if ($result) {
$success = "Information Updated Successfully!<br><br>";
$color = "green";
$flag = 1;
} else {
$error = "Something Wrong! Please Contact With Admin<br>";
$color = "red";
}
}
}
Gramin Polytechnic Vishnupuri, Nanded. Page 46
Life Saviour 2024-25
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/
font-awesome.min.css" />
<?php
if ($flag == 1) {
echo "<meta http-equiv=\"refresh\" content=\"1\" />";
$flag = 0;
}?>
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" style="height: 500px;">
<div class="sidebar">
Gramin Polytechnic Vishnupuri, Nanded. Page 47
Life Saviour 2024-25
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php" class="active">Update Information</a></li>
<li><a href="request.php">Add Blood Request</a></li>
<li><a href="donation-date.php">Next Donation Date</a></li>
<li><a href="joiningVerification.php">Join as a Donor</a></li>
<li><a href="updatepwd.php" >Change Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<div class="updateinfo">
<h3>Update Information</h3>
<form action="" method="POST">
<span style="text-align:center; color:<?php echo "$color"; ?>; font-size: 15px;">
<?php echo "$error$success"; ?></span>
<div class="fname">
<input type="text" placeholder="First Name" name="first_name" value="<?php echo
$rows['first_name'] ?>"></br>
</div>
<div class="lastname">
<input type="text" placeholder="Last Name" name="last_name" value="<?php echo
$rows['last_name'] ?>"></br>
</div>
<div class="email">
<input type="email" placeholder="Email" name="email" value="<?php echo
$rows['email'] ?>"></br>
</div>
<div class="mobile">
<input type="text" placeholder="Mobile Number" name="phone" value="<?php echo
$rows['phone'] ?>"></br>
</div>
<div class="age">
<input type="text" placeholder="Age" name="age" value="<?php echo $rows['age'] ?
Gramin Polytechnic Vishnupuri, Nanded. Page 48
Life Saviour 2024-25
>"></br>
</div>
<div class="gender">
<select id="gender" name="gender" >
<option value="">Gender</option>
<option value="male" <?php if ($rows['gender'] == "male") {echo "selected";}?
>>Male</option>
<option value="female" <?php if ($rows['gender'] == "female") {echo "selected";}?
>>Female</option>
<option value="other" <?php if ($rows['gender'] == "other") {echo "selected";}?
>>Other</option>
</select>
</div>
<div class="blood_group">
<select id="blood_group" name="blood_group" class="form-select">
<option value="">Blood Group</option>
<option value="A+" <?php if ($rows['blood_group'] == "A+") {echo "selected";}?
>>A+</option>
<option value="A-" <?php if ($rows['blood_group'] == "A-") {echo "selected";}?
>>A-</option>
<option value="B+" <?php if ($rows['blood_group'] == "B+") {echo "selected";}?
>>B+</option>
<option value="B-" <?php if ($rows['blood_group'] == "B-") {echo "selected";}?
>>B-</option>
<option value="AB+" <?php if ($rows['blood_group'] == "AB+") {echo
"selected";}?>>AB+</option>
<option value="AB-" <?php if ($rows['blood_group'] == "AB-") {echo "selected";}?
>>AB-</option>
<option value="O+" <?php if ($rows['blood_group'] == "O+") {echo "selected";}?
>>O+</option>
<option value="O-" <?php if ($rows['blood_group'] == "O-") {echo "selected";}?
>>O-</option>
</select>
Gramin Polytechnic Vishnupuri, Nanded. Page 49
Life Saviour 2024-25
</div>
<div class="district">
<select id="district" name="district" >
<option value="">District</option>
<option value="Nanded" <?php if ($rows['district'] == "Dhaka") {echo "selected";}?>>
Nanded</option>
<option value="Latur" <?php if ($rows['district'] == "Latur") {echo
"selected";}?>>Latur</option>
<option value="Mumbai" <?php if ($rows['district'] == "Mumbai") {echo "selected";}?
>>Mumbai</option>
<option value="Pune" <?php if ($rows['district'] == "Pune") {echo
"selected";}?>>Pune</option>
<option value="Nagpur" <?php if ($rows['district'] == "Nagpur") {echo "selected";}?
>>Nagpur<option value="Nashik" <?php if ($rows['district'] == "Nashik") {echo "selected";}?
>>Nashik</option>
<option value="Solapur" <?php if ($rows['district'] == "Solapur") {echo "selected";}?
>>Solapur</option>
<option value="Kolhapur" <?php if ($rows['district'] == "Kolhapur") {echo "selected";}?
>>Kolhapur</option>
</select>
</div>
<button type="submit" name="update">UPDATE</button><br>
</form>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
<xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8"
preserveAspectRatio="none">
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
Gramin Polytechnic Vishnupuri, Nanded. Page 50
Life Saviour 2024-25
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Gramin Polytechnic Vishnupuri, Nanded. Page 51
Life Saviour 2024-25
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 52
Life Saviour 2024-25
Gramin Polytechnic Vishnupuri, Nanded. Page 53
Life Saviour 2024-25
5.7 Join Verification page
<?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
}
Gramin Polytechnic Vishnupuri, Nanded. Page 54
Life Saviour 2024-25
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/
font-awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" style="height: 500px;">
<div class="sidebar">
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php">Update Information</a></li>
<li><a href="request.php">Add Blood Request</a></li>
<li><a href="donation-date.php">Next Donation Date</a></li>
<li><a href="joiningVerification.php" class="active">Join as a Donor</a></li>
<li><a href="updatepwd.php">Change Password</a></li>
Gramin Polytechnic Vishnupuri, Nanded. Page 55
Life Saviour 2024-25
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<div class="verification">
<h3>Join As a Blood Donor</h3>
<div class="form_ver">
<form action="" method="post" enctype="multipart/form-data">
Select image to upload <br>
<label for="nid_front">NID Front</label><br>
<input type="file" name="nid_front" id="nid_front" class="file" required><br>
<label for="nid_back">NID Back</label></form><br>
<input type="file" name="nid_back" id="nid_back" class="file" required><br>
<input type="checkbox" name="checkbox"> <span>I want to become a Donor</span><br>
<input type="submit" value="Upload Image" name="submit">
</form>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
Gramin Polytechnic Vishnupuri, Nanded. Page 56
Life Saviour 2024-25
<br />
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Output:
5.8 Request Page:
Gramin Polytechnic Vishnupuri, Nanded. Page 57
Life Saviour 2024-25
<?php
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
function validate_data($val)
{
$val = trim($val);
$val = stripslashes($val);
$val = htmlspecialchars($val);
return $val;
}
$error = "";
$success = "";
$color = "";
$flag = 0;
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
} else {
if (isset($_POST['submit'])) {
$name = $rows['first_name'] . " " . $rows['last_name'];
$email = $rows['email'];
Gramin Polytechnic Vishnupuri, Nanded. Page 58
Life Saviour 2024-25
$phone_primary = $rows['phone'];
$extra_contact = $_POST['extranum'];
$blood_group = $_POST['b_group'];
$num_bags = $_POST['num_bags'];
$message = $_POST['whyneed'];
$date = $_POST['date'];
if (empty($num_bags) || empty($blood_group) || empty($date)) {
$error = "Fill out the required fields!<br><br>";
$color = "red";
} else {
$name = validate_data($name);
$email = validate_data($email);
$phone_primary = validate_data($phone_primary);
$extra_contact = validate_data($extra_contact);
$blood_group = validate_data($blood_group);
$num_bags = validate_data($num_bags);
$message = validate_data($message);
$date = validate_data($date);
$sql = "INSERT into
blood_requests(Name,email,phone_primary,extra_contact,blood_group,num_bag,message,w
hen_needed)
values('$name','$email','$phone_primary','$extra_contact','$blood_group','$num_bags','$mess
age','$date')";
$result = mysqli_query($conn, $sql);
if ($result) {
$success = "Request Sent Successfully!<br><br>";
$color = "green";
$flag = 1;
} else {
$error = "Something Wrong! Please Contact With Admin<br>";
$color = "red";
}
}
}
Gramin Polytechnic Vishnupuri, Nanded. Page 59
Life Saviour 2024-25
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" >
<div class="sidebar">
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php">Update Information</a></li>
<li><a href="request.php" class="active">Add Blood Request</a></li>
<li><a href="donation-date.php">Next Donation Date</a></li>
Gramin Polytechnic Vishnupuri, Nanded. Page 60
Life Saviour 2024-25
<li><a href="joiningVerification.php">Join as a Donor</a></li>
<li><a href="updatepwd.php" >Change Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<div class="blood_request">
<h3>Add Blood Request</h3>
<form action="" method="post">
<span style="text-align:center; color:<?php echo "$color"; ?>; font-size: 15px;">
<?php echo "$error$success"; ?></span>
<div class="b_group">
<label for="b_group">Blood Group</label><br />
<select name="b_group" required>
<option value="0">Select</option>
<option value="A+">A+</option>
<option value="A-">A-</option>
<option value="B+">B+</option>
<option value="B-">B-</option>
<option value="AB+">AB+</option>
<option value="AB-">AB-</option>
<option value="O+">O+</option>
<option value="O-">O-</option>
</select>
</div>
<br>
<div class="num_bags">
<label for="num_bags">Number Of Bags</label><br />
<select name="num_bags" required>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
Gramin Polytechnic Vishnupuri, Nanded. Page 61
Life Saviour 2024-25
</div>
<br>
<label for="date">When Needed?</label><br>
<input type="date" id="date" name="date" min="<?php echo date("Y-m-d"); ?
>"><br>
<label for="extranum">Extra Contact Number</label><br>
<input type="text" name="extranum" ><br>
<label for="whyneed">Why is blood needed and where?</label><br>
<textarea type="text" name="whyneed"></textarea><br>
<button type="submit" class="submit" name="submit">SUBMIT</button>
</form>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
<a href="">Different Blood Groups</a>
<br />
Gramin Polytechnic Vishnupuri, Nanded. Page 62
Life Saviour 2024-25
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Gramin Polytechnic Vishnupuri, Nanded. Page 63
Life Saviour 2024-25
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 64
Life Saviour 2024-25
<?php \
include "../db-connect.php";
if (isset($_POST['logout'])) {
//session_destroy();
setcookie("user", "", time() - 60 * 60 * 24, "/");
header("location:../index.php");
}
function validate_data($val)
{
$val = trim($val);
$val = stripslashes($val);
$val = htmlspecialchars($val);
return $val;
}
$error = "";
$success = "";
$color = "";
$flag = 0;
if (!isset($_COOKIE['user'])) {
header("location: ../login.php");
} else {
$email = $_COOKIE['user'];
$sql = "SELECT * FROM users where email=\"$email\"";
$select = mysqli_query($conn, $sql);
$num_rows = mysqli_num_rows($select);
$rows = mysqli_fetch_array($select, MYSQLI_ASSOC);
}
if (isset($_COOKIE['user']) && $num_rows != 1) {
header("location: ../login.php");
} else {
if (isset($_POST['update_pwd'])) {
$password = $_POST['curr_pwd'];
$new_password = $_POST['pwd1'];
$confirm_password = $_POST['pwd2'];
Gramin Polytechnic Vishnupuri, Nanded. Page 65
Life Saviour 2024-25
if (empty($password) || empty($new_password) || empty($confirm_password)) {
$error = "Fill out the required fields!<br>";
$color = "red";
} else {
$password = validate_data($password);
$new_password = validate_data($new_password);
$confirm_password = validate_data($confirm_password);
$password = md5($password);
$new_password = md5($new_password);
$confirm_password = md5($confirm_password);
if ($new_password != $confirm_password) {
$error = "New Password and Confirm Password is not same!<br><br>";
$color = "red";
} else {
$sql = "UPDATE users SET `password`='$new_password' where email='$email'
and password ='$password' ";
$result = mysqli_query($conn, $sql);
if ($result) {
$success = "Password Changed Successfully!<br><br>";
$color = "green";
$flag = 1;
} else {
$error = "Invalid Old Password!<br>";
$color = "red";
}
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Account Dashboard | Life Saviour</title>
Gramin Polytechnic Vishnupuri, Nanded. Page 66
Life Saviour 2024-25
<link rel="stylesheet" type="text/css" href="../css/mystyle.css">
<link rel="stylesheet" type="text/css" href="../css/oth.css">
<link rel="stylesheet" type="text/css" href="../css/panelstyle.css">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css" />
</head>
<body>
<div class="topnav">
<li><a href="../index.php" class="navlogo">Life Saviour</a></li>
<li><a href="../index.php">Home</a></li>
<li><a href="../about-us.php">About Us</a></li>
<li><a href="../search-donors.php">Search Donors</a></li>
<li><a href="../emergency.php">Life Saving Contacts</a></li>
<li><a href="login.php"><?php if (isset($_COOKIE['user'])) {echo "<form action=\"\"
method=\"post\"> <button type=\"submit\" name=\"logout\"
class=\"navbutton\">Logout</button>
</form>";} else {echo "Login";}?></a></li>
<li><a href="" class="site-search"><i class="fa fa-search"
aria-hidden="true"></i></a></li>
</div>
<div class="panelhome" style="height: 500px;">
<div class="sidebar">
<ul>
<li><a href="home.php" >Home</a></li>
<li><a href="editinfo.php">Update Information</a></li>
<li><a href="request.php">Add Blood Request</a></li>
<li><a href="donation-date.php">Next Donation Date</a></li>
<li><a href="joiningVerification.php">Join as a Donor</a></li>
<li><a href="updatepwd.php" class="active">Change Password</a></li>
<li><a href="delete.php" >Delete Account</a></li>
</ul>
</div>
<div class="updatepwd">
Gramin Polytechnic Vishnupuri, Nanded. Page 67
Life Saviour 2024-25
<h3>Change Password</h3>
<form action="" method="post">
<span style="text-align:center; color:<?php echo "$color"; ?>; font-size: 15px;">
<?php echo "$error$success"; ?></span>
<input type="password" placeholder="Current Password" name="curr_pwd"
class="password" required><br>
<input type="password" placeholder="New Password" name="pwd1"
class="password" required><br>
<input type="password" placeholder="Confirm New Password" name="pwd2"
class="password" required><br>
<button type="submit" name="update_pwd">Update Password</button>
</form>
</div>
</div>
<div class="footer">
<div class="elementor-shape" data-negative="false">
</svg>
</div>
<div class="column left">
<h1>Life Saviour</h1>
<p>Life Saviour is an automated blood service that connects blood searchers with
voluntary blood donors in a moment through SMS and website.</p>
<a href="#"><i aria-hidden="true" class="fa fa-facebook fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-twitter fa-2x"></i></a>
<a href="#"><i aria-hidden="true" class="fa fa-linkedin fa-2x"></i></a><br />
<div class="xyz">
<a href="/terms">Terms & Conditions</a> | <a href="/policy">Privacy
Policy</a>
</div>
</div>
<div class="column right">
<h1 style="color: #333333;">Quick Links</h1>
<a href="#">Contact Us</a>
<br />
Gramin Polytechnic Vishnupuri, Nanded. Page 68
Life Saviour 2024-25
<a href="">Different Blood Groups</a>
<br />
<a href="#">Who can donate blood?</a>
<br />
<a href="#">Different Blood Terms</a>
<br />
</div>
</div>
</body>
</html>
Output:
Gramin Polytechnic Vishnupuri, Nanded. Page 69
Life Saviour 2024-25
CHAPTER 6
TESTING & DEBUGGING STRATEGIES & TEST
CASES
6.1 Testing:
Testing is the process of detecting errors. Testing performs a very critical
role for quality assurance and for ensuring the reliability of software. The
results of testing are used later on during maintenance also.
6.1.1 Psychology of Testing
The aim of testing is often to demonstrate that a program works by
showing that it has no errors. The basic purpose of testing phase is to detect the
errors that may be present in the program. Hence one should not start testing with
the intent of showing that a program works, but the intent should be to show that
a program doesn’t work. Testing is the process of executing a program with the
intent of finding errors.
6.2 TESTING OBJECTIVES
The main objective of testing is to uncover a host of errors, systematically
and with minimum effort and time. Stating formally, we can say:
Testing is a process of executing a program with the intent of
finding an error.
A successful test is one that uncovers an as yet undiscovered error.
Gramin Polytechnic Vishnupuri, Nanded. Page 70
Life Saviour 2024-25
A good test case is one that has a high probability of finding error, if
it exists.
The tests are inadequate to detect possibly present errors.
The software more or less confirms to the quality and reliable
standards.
6.3 LEVELS OF TESTING
In order to uncover the errors present in different phases we have the
concept of levels testing. The basic levels of testing are as shown below…
System Testing
The philosophy behind testing is to find errors. Test cases are devised
with this in mind.
A strategy employed for system testing is code testing.
Code Testing
This strategy examines the logic of the program. To follow this method
we developed
some test data that resulted in executing every instruction in the program and
module i.e. every path is tested. Systems are not designed as entire nor are they
tested as single systems. To ensure that the coding is perfect two types of
testing is performed or for that matter is performed or that matter is performed
or for that matter is performed on all systems.
6.4 TYPES OF TESTING
Unit Testing
Link Testing
6.4.1 Unit Testing
Unit testing focuses verification effort on the smallest unit of software
i.e.
the module. Using the detailed design and the process specifications testing is
done to uncover errors within the boundary of the module. All modules must be
successful in the unit test before the start of the integration testing begins.
Gramin Polytechnic Vishnupuri, Nanded. Page 71
Life Saviour 2024-25
In this application developer tests the programs up as system. Software
units ina system are the modules and routines that are assembled and integrated
to form a specific function. Unit testing is first done on modules, independent of
one another to locate errors. This enables to detect errors. Through this errors
resulting from interaction between modules initially avoided.
6.4.2 Link Testing
Link testing does not test software but rather the integration of each
module in system. The primary concern is the compatibility of each module.
The Programmer tests where modules are designed with different parameters,
length, type etc.
6.4.3 Integration Testing
After the unit testing we have to perform integration testing. The goal
here is to see if modules can be integrated properly, the emphasis being on
testing interfaces between modules. This testing activity can be considered as
testing the design and hence the emphasis on testing module interactions.In this
project integrating all the modules forms the main system. When integrating all
the modules I have checked whether the integration effects Working of any of
the services by giving different combinations of inputs with which the two
services run perfectly before Integration
6.4.4 System Testing
Here the entire software system is tested. The reference document
for this process is the requirements document, and the goal os to see if software
meets its requirements
Gramin Polytechnic Vishnupuri, Nanded. Page 72
Life Saviour 2024-25
6.4.5 Acceptance Testing
Acceptance Test is performed with realistic data of the client to
demonstrate that the software is working satisfactorily. Testing here is focused
on external behavior of the system; the internal logic of program is not
emphasized.
In this project ‘Network Management Of Database System’ I have
collected some data and tested whether project is working correctly or not.
Test cases should be selected so that the largest number of attributes
of an equivalence class is exercised at once. The testing phase is an important
part of software development. It is the process of finding errors and missing
operations and also a complete verification to determine whether the objectives
are met and the user requirements are satisfied.
6.5 WHITE BOX TESTING
This is a unit testing method where a unit will be taken at a time and
tested thoroughly at a statement level to find the maximum possible errors. I
tested step wise every piece of code, taking care that every statement in the code
is executed at least once. The white box testing is also called Glass Box
Testing.I have generated a list of test cases, sample data. which is used to check
all possible combinations of execution paths through the code at every module
level.
This testing method considers a module as a single unit and checks
the unit at interface and communication with other modules rather getting into
details at statement level. Here the module will be treated as a block box that
will take some input and generate output. Output for a given set of input
combinations are forwarded to other modules
Gramin Polytechnic Vishnupuri, Nanded. Page 73
Life Saviour 2024-25
6.6 Test Cases
Test Case
Test Case ID Description
Verify the Verify the
Navigate to "Call Donor" Navigate to "Call Donor"
visibility of visibility of
donor button is visible donor button is visible
TC_CALL_001 the "Call TC_CALL_001 the "Call
list/request for eligible list/request for eligible
Donor" Donor"
page donors page donors
button button
Call dialog/modal Call dialog/modal
Verify call Verify call
Click "Call appears or call Click "Call appears or call
TC_CALL_002 initiation TC_CALL_002 initiation
Donor" starts (depending Donor" starts (depending
process process
on system type) on system type)
Verify call Make a call Verify call Make a call
Call is logged in Call is logged in
TC_CALL_003 history through TC_CALL_003 history through
user’s call history user’s call history
logging system logging system
Trigger Trigger
Verify All matching Verify All matching
emergency emergency
emergency donors receive emergency donors receive
TC_CALL_004 call to TC_CALL_004 call to
call call call call
multiple multiple
broadcast notification/invite broadcast notification/invite
donors donors
Gramin Polytechnic Vishnupuri, Nanded. Page 74
Life Saviour 2024-25
6.7 Emergency Call Module
Gramin Polytechnic Vishnupuri, Nanded. Page 75
Life Saviour 2024-25
CHAPTER 7
ADVANTAGES
1. Centralized Information Management
All donor, patient, and blood bank data is stored in one place.
Easy access and update of records from any location with internet access.
2. Efficient Donor Management
Allows donors to register, view donation history, and get notified when eligible to
donate again.
Helps in tracking regular donors and their blood groups.
3. Faster Emergency Response
Enables quick identification and contact of matching blood donors during
emergencies.
Emergency call/request modules can alert donors and hospitals instantly.
4. Accessibility and Availability
24/7 access from anywhere via a web browser.
Helps patients or hospitals search for donors or blood banks in real-time.
5. Reduces Manual Work and Errors
Automates processes like registration, matching, and notifications.
Reduces human errors that can occur in manual systems or paper-based records.
6. Transparency and Traceability
Tracks donations, requests, and usage of blood.
Ensures accountability in the blood distribution chain.
7. Awareness and Community Engagement
Can include educational content to raise awareness about the importance of blood
donation.
Encourages community involvement through events and drives listed on the platform.
8. Admin and Reporting Tools
Admins can manage users, monitor inventory, and generate real-time reports.
Helps in analyzing donor trends, regional demand, and stock levels.
9. Cost-Effective and Scalable
Gramin Polytechnic Vishnupuri, Nanded. Page 78
Life Saviour 2024-25
Reduces the cost of managing blood donations manually.
Can be easily scaled to include more regions, hospitals, or features.
10. Secure and Private
With proper implementation, it ensures secure handling of sensitive data like donor
identity and medical history.
Implements access controls for different users (admins, hospitals, donors).
CHAPTER 8
Gramin Polytechnic Vishnupuri, Nanded. Page 78
Life Saviour 2024-25
CONCLUSIONS AND DATA REFERENCES
CONCLUSION :
The Blood Donation Web-Based Project significantly enhances the efficiency,
accessibility, and reliability of blood donation processes. By digitizing donor registration,
blood request handling, and inventory management, the system ensures timely availability of
blood, especially during emergencies. The platform bridges the gap between donors and
recipients, creating a life-saving network that is fast, transparent, and easy to manage.
Through real-time tracking, automated alerts, and centralized data management, the
project reduces human errors and administrative burdens. It also raises awareness and
encourages community participation, ultimately contributing to better public health outcomes.
With scalability, accessibility, and integration capabilities, this system can be implemented in
various regions and upgraded with future technologies like AI-driven matching and
geolocation services.
CHAPTER 9
DATA REFERENCES
Gramin Polytechnic Vishnupuri, Nanded. Page 78
Life Saviour 2024-25
The following data sources, guidelines, and references were used in designing and
validating the system:
1. World Health Organization (WHO) – Guidelines on blood donation and
transfusion safety
https://www.who.int/health-topics/blood-products
2. Red Cross Blood Services – Information on donor eligibility, blood types, and
emergency needs
https://www.redcrossblood.org/
3. National Blood Transfusion Services (NBTS) – Local guidelines and statistics
(India or your local country)
https://nbtc.naco.gov.in/
4. Peer-Reviewed Journals – Articles on digital transformation in healthcare and e-
donation systems
o “Use of ICT in Blood Bank Management” – International Journal of
Computer Applications
o “Web-based Blood Donor Management System” – IJERT/IEEE papers
Gramin Polytechnic Vishnupuri, Nanded. Page 78
Life Saviour 2024-25
REFERENCES
References (APA Style)
1. World Health Organization. (n.d.). Blood safety and availability. Retrieved from
https://www.who.int/health-topics/blood-products
2. Red Cross Blood Services. (n.d.). Blood donation basics. Retrieved from
https://www.redcrossblood.org/
3. National Blood Transfusion Council (NBTC). (n.d.). e-Raktkosh – Blood bank
management system. Retrieved from https://www.eraktkosh.in/
4. Singh, R., & Sharma, M. (2021). Implementation of a web-based blood donor
management system. International Journal of Engineering Research & Technology
(IJERT), 10(2), 134–139.
5. Canadian Blood Services. (n.d.). How blood donations help. Retrieved from
https://www.blood.ca/en
6. Dey, A., & Banerjee, S. (2020). Role of ICT in healthcare: Blood bank management
system. International Journal of Computer Applications, 176(27), 1–5.
References (IEEE Style)
1. World Health Organization, "Blood safety and availability," [Online]. Available:
https://www.who.int/health-topics/blood-products
2. Red Cross Blood Services, "Blood donation basics," [Online]. Available:
https://www.redcrossblood.org/
3. National Blood Transfusion Council (NBTC), "e-Raktkosh – Blood bank management
system," [Online]. Available: https://www.eraktkosh.in/
4. R. Singh and M. Sharma, "Implementation of a web-based blood donor management
system," Int. J. Eng. Res. Technol., vol. 10, no. 2, pp. 134–139, 2021.
5. Canadian Blood Services, "How blood donations help," [Online]. Available:
https://www.blood.ca/en
6. A. Dey and S. Banerjee, "Role of ICT in healthcare: Blood bank management system,"
Int. J. Comput. Appl., vol. 176, no. 27, pp. 1–5, 2020.
Gramin Polytechnic Vishnupuri, Nanded. Page 78