On Sun, Oct 21, 2012 at 12:01 PM, Maciek Sokolewicz <maciek.sokolewicz@xxxxxxxxx> wrote: > On 21-10-2012 01:11, Karl DeSaulniers wrote: >>>> >>>> Thanks for the response. Yes, for the US I plan on calculating by >>>> state, but >>>> this website is not geared to just the US. >>>> So I am looking for a solution that lets me also calculate by >>>> country/region. >>>> Was looking on google and found geoip, but not sure if this will do >>>> the job >>>> I am looking for. >>>> Anyone with experience on geoip that can send pointers? >>>> >>>> Thanks, >>>> >>>> >>>> Best, >>>> Karl DeSaulniers >>>> Design Drumm >>>> http://designdrumm.com >>> >>> >>> >>> Geo IP is based on IP, and I must warn you that IP data is not always >>> accurate. Especially here in Europe, companies that are based in >>> multiple countries sometimes only register their IPs in a single >>> country, and share them between all the countries they are active in. >>> This will give you wrong data from GeoIP. The time difference will >>> only be 1 hour at max, but still. >> >> >> >> That was what my own suspicions were leading to. >> I am familiar with the fact that ips can be spoofed. >> Thanks for the corroboration. >> >> Best, >> >> Karl DeSaulniers >> Design Drumm >> http://designdrumm.com >> > > As Bart said, IP is not ideal for this situation. > > Since you do have information about the location of that person (as in > country and possible state), you can find out the timezone via a static > database. > > The HTML5 geolocation tool is nice, and would certainly help a lot! However, > be aware of the fact that it only works if there is the device on which the > browser runs actually has the ability to find out its location. Many > smartphones have GPS chips, but most PCs don't. Asking a PC "where are you > located?" the PC will answer "How should I know?". > > Luckily for you, the way of country and state is pretty easy. I've handed > you a list to find it in the USA. For most countries in the world, there's a > simple 1:1 mapping of timezone and country > (http://en.wikipedia.org/wiki/List_of_time_zones_by_country), there are > however 21 countries which have multiple timezones. In these cases, you'll > need extra information to be able to distinguish between them. > > For the USA, you already have a way. > For (ex-)colonical islands and such (such as for France), you could always > add them to the country list: > - France > - France (Marquesas Islands) > - France (Gambier) > etc. > Thus treating them as separate countries for your timezone db. > > In Russia, Canada, Australia, New Zealand, Brasil, Indonesia, Kiribati, > Mexico,Congo, Ecuador, Micronesia, Kazakhstan and Mongolia you'll need to > know their province / state to more accurately assess the ideal timezone. > > So for most countries, it's a simple 1:1 translation. For the above > countries, you'll need some extra info, and translate further based on that. > You should be able to find the info required yourself, it just takes a while > to collect it. > > Alternatively, and this is the most simple way; since you're asking people > for their country and such, simply also ask them about their timezone. Don't > bother automating and putting a heck of a lot of time into hard to realize > solutions, when you can ask a very simple and easy-to-answer question to the > browser instead. :) > > - Tul > Don't forget that some countries have DST, and some don't. And those that have DST, all use different dates.. So in to keep a static database you would also need to have DST info from all countries. - Matijn -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php