I'm working on a website that enables people to find other people buying/selling things, basically like craigslist. It has an emphasis on being able to find things locally but should also be able to find stuff not local that can be shipped. My plan was to just take a zip code for each listing, then users could do the whole "Up to 25 miles from 90210" search to narrow down local listings, pretty simple. I'd prefer not to have them input a full street, city, state, country address.
However, I want to support international listings, my niche has a lot of users in the UK and in Thailand. However, this complicates things, I can no longer just accept zip codes. I also don't really know how to handle geospatial lookups for all of the various regions. I could swap to just accepting Country + State/Region, like USA + California, or Thailand + Buri Ram, but that doesn't allow any granularity to find listings closer or further from you, you have to hope there is sellers in that exact locale.
So I'm looking for opinions or options about how to approach this? Overall this is supposed to be a fairly simple site for a pretty small niche, so I don't want to build some crazy elaborate system as it wont be worth it.