Updating old code can be a real pain if no organization is imposed either from the programmer, the programming language, or a framework. It's especially painful if it's your own code. PHP and Perl are extremely powerful languages, but without self discipline or some kind of framework, you're probably going to end up with sphagetti code.
I've been using CakePHP(http://cakephp.org/) and it is fantastic! It helps you with the complicated/hard stuff, and makes available components to autobuild code. It's in the middle of a line between trying to do everything for you, and making you do everything yourself.
You setup the database yourself and then point the cake scripts at it, and it can build a basic CRUD interface for you, or create a scaffold while you play with the database. I've used this to create a few QND interfaces in just a few minutes.