What I owned
Built the entire stack in PHP + MySQL: multi-step registration form with client-side validation, progressive save, tracking-code generation, and a JSON payload column that preserves the full submission shape for audit. Admin panel reads the same data with sortable, filterable review and status workflows.
Constraints
- Run in a XAMPP/Hostinger PHP environment — no Node runtime available
- Mobile-first for parents submitting on phones
- Capture every NSSE-mandated section
- Admin panel must work for non-technical office staff
Process
- 01
Form modeling
Mapped every required NSSE section into a multi-step flow with progressive validation.
- 02
Tracking codes
Each submission gets a unique tracking code surfaced to applicants for follow-up.
- 03
Payload audit
Full submission stored as JSON payload column alongside indexed fields for sort/filter.
- 04
Admin panel
Sortable review with status workflow (Submitted, Reviewed, Accepted, Waitlisted).
Approach
When the runtime is XAMPP/Hostinger PHP, the right answer is PHP — not a Node rewrite that deploys awkwardly. The interesting design call was the JSON payload column: indexed metadata for query performance, full payload for audit and revision. This avoided schema migration churn as the form evolved.
Deliverables
- Multi-step PHP registration form with validation
- MySQL schema with indexed metadata + JSON payload column
- Tracking code generation and applicant lookup
- Admin review panel with filter, sort, and status
- Mobile-first responsive layout
- XAMPP/Hostinger-deployable single-folder install
Outcomes
- Replaced paper-based admissions process
- Applicants receive immediate tracking code
- Admin office reviews submissions in a single sortable view
- Full submission payload preserved for compliance audit