JTeagle - 5:46 pm on Sep 13, 2012 (gmt 0)
OK, I have figured out what I was missing.
I decided not to give up, and went into phpMyAdmin and created a brand new user with password, all privileges. I then used this username / password combo in the PHP, and lo and behold, it worked.
So I went back to the Privileges page to see if I could spot a difference... and finally I saw what I should have seen in the first place: none of the other logins required a password. The problem was, I had not seen this before and phpMyAdmin doesn't allow a login without a password. Not only did it accept the password I had apparently set, but it also *required* it. I'm guessing that password was purely for phpMyAdmin's benefit, and it only passed the username you used on to MySQL.
A little bit irritating to have that discrepancy between phpMyAdmin's login and what was required for MySQL, but that will teach me not to look at the users I had set up.
Hopefully my gaffe will help someone else who is falling into the same trap - ignore the password phpMyAdmin uses and check the Privileges page yourself!