LifeDrop is a blood donor directory PHP project with source code. Voluntary donors register with their blood group, city and last donation date, and hospitals or blood banks search for donors and post blood requests. The portal checks eligibility every day: men can donate again after 90 days and women after 120 days, with age 18 to 65 and weight 45 kg or more. Only eligible donors appear in search, so hospitals stop wasting calls on people who cannot give.
How it works
- Donor registers with blood group, gender, date of birth, weight, city and last donation date
- Each donor sees a blood drop gauge that fills day by day, with days left and the next eligible date
- Hospital posts a blood request (group, units, urgency, needed-by date) and all eligible donors of the city with a compatible group get a notification
- Donor clicks "I Can Donate"; only then the hospital can see the donor's mobile number
- Hospital confirms the visit and clicks "Mark Donated" - the donation is saved with a certificate number, the donor's last donation becomes today and the unit is added to the request
- Donor prints a certificate with QR code; anyone can verify it on the website
- Request becomes Fulfilled when all units are collected
Users
- Donor - eligibility drop, health check, matching requests, responses, donation history, certificate
- Hospital / Blood Bank - request board, post request, send request to a donor, confirm visit, mark donated, donations chart
- Admin - approve hospitals, eligibility rules, cities, donors, requests, donations, reports, notices, enquiries, settings
- Visitor - find donors by group and city, open requests, "When can I donate?" calculator, certificate verification
Highlights
- 3 login roles + public site, 44 pages, 12 MySQL tables with realistic Indian sample data
- Eligibility by last donation: same rule in PHP and inside the SQL search query
- Blood group compatibility (O- to all, AB+ from all) in search, notifications and responses
- Donation saved in a database transaction with row lock - units never counted twice
- Printable certificate with QR code and public verify page
- Donor mobile numbers masked until the donor agrees
- Validations on every form (client + server), CSRF tokens, prepared statements, bcrypt passwords
- Charts with Chart.js, report with date filter and print
- Works offline on XAMPP - no internet needed for the demo
- Demo logins: admin / admin123, rahul@gmail.com / 123456 (donor), rubyhall@gmail.com / 123456 (hospital)
What you get
- Complete PHP source code with MySQL database file and sample data
- Project report (55 pages) with 8 diagrams, abstract, explanation with viva questions and setup guide - all as PDF
- Screenshots of every page and README with a 10-minute demo script
Who can use this project
BCA, BSc (CS / IT), MCA and Diploma final year students, and Engineering 2nd / 3rd year students for a micro project.
Frequently asked questions
Does it need internet? No. Bootstrap, icons, fonts and charts are inside the project, so it runs fully on XAMPP.
Is there any payment? No. Blood donation is free, so the project has no payment module.
Can the 90 / 120 day rule be changed? Yes. The admin can change the gap, age limits and minimum weight on the Eligibility Rules page.
Is it suitable for 3 students? Yes. The README and explanation PDF split the work into three parts for three demos.