On Sun, Oct 21, 2012 at 7:30 AM, Matijn Woudt <tijnema@xxxxxxxxx> wrote: > 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 Using the standard labels in /usr/share/zoneinfo should be able to avoid having to keep track of who is and isn't in DST, *provided* you find a way to map the user's address to one of those files. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php