For quite some time now I've wanted to set up a dynamic web page for controlling aspects of my life, but have had to wait until I have a network to test it on. When an opportunity came up to not only practice these skills but also to develop a system that I could use in my every day life, I jumped at the opportunity.
What it does
This project creates a system for establishing a laundry organization system for a user and then presents a dynamic graphical frontend available on nearly every platform through the use of php for managing that system.
How I built it
Initially I had to set up my computer to host PHP webpages and a MySQL server. From there, I created from the ground up an empty database with a known username and password and from that starting point I created a dynamic web-based frontend to authenticate user identity, view, and manage this database.
Challenges I ran into
Working with PHP at the best of times is a daunting prospect, and this truly was no exception. Couple that with dynamically generating mysql queries with user input and having to account for people's propensity for destruction and I truly had my work cut out for me.
Accomplishments that I'm proud of
After the initial completion, there were only 3 errors that needed fixing:
1) Limiting data input sizes 2) Restricting data input formats to prevent malicious laundry names 3) Adding a log out button
What I learned
In creating this system, I learned that users can often see things that developers cannot. Were it not for the input of people around me who tested and interacted with this system, it would not be the system that it is now. Through the input of others, I learned to limit the input of even more people.
What's next for Laundry List
TOP PRIORITY: Add stronger form of user authentication While having no form of password works fine for a small, locally hosted laundry management system, it is not and never will be acceptable for a publicly facing management system.
2) Test further My entire reason for coding this in PHP was near absolute compatibility with every system with a web browser. I wanted everyone from an old woman on netscape navigator to her very young son on an old flip phone to any silicon valley exec to be able to access and operate this laundry management system, but on a network where I can't even find my local IP address easily testing is virtually impossible.
3) Clean up the CSS A lot of the style sheet is very basic, and uses the same grey I use for all test site implementations. While I did see some options that I very much enjoyed for CSS, I do not have much experience with it and did not know how to implement the things I wanted. Given more time, I would love to clean up the user interface.