Philip Regan
A password generator based on the "correct horse battery staple example from XKCD.
I will do an in-person demo the Thursday before this is due.
Extra Features of the generator include:
- A password of four words is created by default, including upon loading the page without a query string
- Settings found in the query string are repopulated upon refresh
- The user can define a delimiter string to join password components
- Converts password to "camelCase"
- PHP created and edited with PHPStorm.
- Bootstrap used for the design
- HTML and CSS created and edited with BBEdit
X Create HTML view
X Title, Description, Explanation
X Input Form
X Word count option (pulldown menu)
X Include a number option (checkbox)
X Special symbol (checkbox)
X Uppercase the first letter of the password (checkbox)
- XTRA: Special character count
X XTRA: Specify delimiter or camelCase
- XTRA: Min/Max Length
X Form input validation
> Word list management
- Read word list file // changed to holding the list as a baked-in array for speed
- XTRA: Scrape online word list
X Build password
X Move build password out of the function
X Change build to be array-based then use join before output
X Capture form values
X Validate form values
X Get words
X Add number on selection
X add special character on selection
X Uppercase first letter
X Join
X Output generated password
None known
- 14_09_24_01_00_000: Started source
- 14_09_24_01_01_000: Updated interface; Added
wordlist.php
; Addedpwgen.php
- 14_09_24_01_01_001: Added basic form to interface
- 14_09_25_01_01_002: Added pulling of random word from $wordlist with global variables
- 14_09_25_01_01_003: Added pulling of random word from $wordlist with scoped variables
- 14_09_25_01_01_003: Added function to handle pulling a word from the word list
- 14_09_25_01_01_004: Update generatePassword function to accept variables
- 14_09_25_02_00_000: Added special character list; Added GET to form; Added form value capture; Added form value validation; Updated interface with option information
- 14_09_25_02_01_001: Fixed bug in handling random number special addition
- 14_09_25_02_02_000: Added special character on selection; Minor formatting update to index.php
- 14_09_25_02_03_000: Added populating of password parameters captured from query string
- 14_09_25_02_04_000: Added making first character uppercase
- 14_09_25_02_05_000: Added generating password based on the default; updated readme
- 14_09_26_02_05_001: Updated project title and add explanatory notes for the joke that doesn't really need explanatory notes. If we can't have a bit of fun with our school projects, then what the hell is the point?
- 14_09_26_02_06_000: Added joining built passwords with user-defined delimiter
- 14_09_26_02_07_000: Moved styles to external style sheet for separation of concerns
- 14_09_26_02_08_000: Added converting password to "camelCase"
- 14_09_26_02_09_000: Added table layout to form
- 14_09_26_02_09_001: Minor edits to the About section
- 14_09_26_02_10_000: Added sanitization of user input for HTML. This PHP calls neither the shell nor uses MySQL
cd /Applications/MAMP/htdocs/CSCIE15P2; git add --all; git commit -m "14_09_26_02_10_000"; git push origin master