So (again, not really having a whole lot of knowledge here), what is the correct way to do this, then? Not defending their stupidity, but I notice a lot of the PHP apps I have used have a subdirectory in their distribution usually called conf/ from which a file is included that includes stuff like the db password. Thing is though, those files are usually prefaced with a call to exit() or if a variable isn't defined, die("access denied") or something. That said, the file is still technically in the web server's view, and I see no way to fix that without modifying the app itself.
Really then, it seems to me their idiocy is not having some kind of guard like that on critiical configuration files, just allowing them to be dumped like that.
And re: phpMyAdmin, I get bots on my DSL-line webserver looking for that (it isn't there, I don't use it). I would think that if there was a phpMyAdmin install on a hosted domain like FA, hackers would have found it by now, and not necessarily furries either.