Crypt, or in your case MD5, might be giving different answers from server to server, or version of PHP to another.
This server might be crypting the password you are giving and coming up with a different answer than the old server.
I'm going to attache a test script for you.
where it says "unenecrypted password" put in the password as you are typing it into the log in screen.
Where it says 'crypted password from the database' copy it straight from the database as you see it from phpmyadmin or command line.
The script is preset to use MD5 as in version 6 and up. If you're on a 5 you'll want to comment out the MD5 line and use the crypt line.
Run it from a browser. I'll bet that what this php returns is NOT what was in the database. Only answer? Lost password. Or reinstall PHP with the same version that was on the other server but even that might not fix it. I've also run into cases where 4.0.6 on an NT server couldn't crypt. Never figured that one out.
Lastly.... REMOVE this script when you're done looking. It has your password. If you need to save it for some untold reason rename it to crypt.jpg. Then it's just error trying to view it.