Back to Projects

Basic Banking System

Internship Project

Simple login + transactions to learn full-stack fundamentals.

PHPMySQLHTML/CSSSessions
Code

Transaction Flow

1
Login
2
Select
3
Amount
4
Confirm
5
Done

Demo Accounts

Savings
$5,240.00
John Doe
Checking
$12,100.50
Jane Smith
Admin
$50,000.00
Admin User

Core Features

Authentication
Session-based login/logout
Transfers
Send between accounts
Balance View
Real-time account status
Admin Panel
User management view

Simple MVC Architecture

ViewsHTML + PHP templates
ControllersPHP form handlers
ModelsMySQL queries

Key Learnings

SQL Injection Prevention
Initially wrote vulnerable code, learned to use prepared statements and parameterized queries.
Session Management
Understanding cookies, server-side storage, and stateless HTTP. Foundation for later JWT learning.
Database Design
Primary keys, foreign keys, and why atomicity matters in financial transactions.
Form Validation
Server-side validation is essential. Client-side validation alone isn't enough for security.

Design Choices

Procedural PHP > Frameworks
Wanted to understand fundamentals before using abstractions like Laravel. This helped appreciate what frameworks do under the hood.
Manual SQL > ORM
Needed to learn SQL syntax, table relationships, and query optimization basics. Wrote JOIN queries by hand.
PHP
Backend
MySQL
Database
Feb '20
Built
Internship
Context
Good primer on forms, security basics, and SQL operations