The link I posted is an API provided by the post office, which I must assume updates their database regularly
Depending on how many people register on your site daily, it wouldn't be a huge problem to hit some other database to get the info for the city and then store the city in the database.
But my question is this: Why not just have the user enter their city? They know what city they live in.
Amy