Many online forms have demands for long lists of options, most commonly states, provinces, and countries. Validating the data entered into those forms can also mean checking against reams of information: determining if an areacode is valid, for instance.
Entering any of this data by hand is a recipe for repetitive stress injury or insanity. Instead, I’d suggest these resources:
- StateTable
Collated by Dave Ross: offers lists of US states, Canadian provinces and minor possessions in CSV, SQL, HTML and PHP formats.
OpenGeoCode
Offers all of the official countries of the world as an HTML
<select>form code chunk, in English, French and Spanish. Lots of other information sources too.- Geonames
A free geographical database with over 8,000,000 placenames, including zipcodes, largest cities and highest mountains.
- Brighter Planet
Reference data for everything imaginable: airports and airline codes, pet classifications, dishawasher use categories, and much, much more.
- Factual.com

Offers a great deal of information, in CSV or API format – country names, places, video games, the height, weight, and body mass index of celebrities, and beers of the world, and much more.
Zippopotam.usA Free JSON-based API that pulls postal and zip codes for over 50 countries.
- Geocoder.ca
Maps locations to physical coordinates (for example, given a longitude and latitude, Geocoder can provide the zip code). Currently (and rather stupidly) being sued by Canada Post over the legal
ownership
of postal codes.
Finally, Saša Stamenković has a list of all countries in all languages and data formats. Seperately, Kasabi was an effort to create open datasets; while the site was recently shuttered, many of the datasets are archived on S3 and the Internet Archive.
Pro CSS3 Animation, Apress, 2013
OpenGeoCode