I found the easiest way to get started and create my first PHP/MySQL B.B. game was to get the registration, e-mail verification and login systems working along with a basic installer, written with python in my case. The installer could be written in PHP of course but I wanted a piece of cross platform server side software which could run periodic updates on the registered accounts so bundling the database installer in with it was a no brainer.
Creating a registration system with some simple account variables like id, username, password and e-mail shouldn't take all that long and is something which you would need to create with any type of game anyway. Once that is created you'll have a decent enough understanding of PHP, MySQL, HTML forms, submissions and probably sendmail with a verification system to gauge how difficult it's going to be to create the game you want to create. If you have a problem creating a simple registration system then you're going to have problems creating a full game from scratch.
Using an open source project is fine but you're going to be taking someone else's work and tweaking it, sitting down in front of a blank editor page after playing around with something like that is going to leave you in the same position as when you started, in my opinion. You're going to know how to tweak code but you're not going to have much of a clue about something like creating a class or an extended class from scratch or creating a nice set of MySQL functions for creating instances of them based on values stored in your database tables.
Saying that, it's probably personal preference... I've used the learn by example approach on more than one occasion in my time, I just did it differently when it came to PHP/MySQL.