Re: [PHP] Re: User Timezone

2012-10-21 Thread Maciek Sokolewicz

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

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread Karl DeSaulniers


On Oct 21, 2012, at 5:01 AM, Maciek Sokolewicz 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



Yes, I had thought about asking the user his/her timezone, but being  
that the product will be bought by some people who may have no idea, I  
figured I would try and see if I can set it up myself.
Maybe if the country has a province, i could ask the user then what  
province and get my 1:2 that way. If it is a country I can get the  
timezone for, just skip that question.

Thanks for the thoughts!

Best,

Karl DeSaulniers
Design Drumm
http://designdrumm.com


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread Ashley Sheridan


Karl DeSaulniers  wrote:

>
>On Oct 21, 2012, at 5:01 AM, Maciek Sokolewicz 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
>
>
>Yes, I had thought about asking the user his/her timezone, but being
>that the product will be bought by some people who may have no idea, I
>
>figured I would try and see if I can set it up myself.
>Maybe if the country has a province, i could ask the user then what
>province and get my 1:2 that way. If it is a country I can get the
>timezone for, just skip that question.
>Thanks for the thoughts!
>
>Best,
>
>Karl DeSaulniers
>Design Drumm
>http://designdrumm.com

Don't most browsers include this information in the HTTP headers?
--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread Samuel Lopes Grigolato
Sorry if it's to dumb or hacky solution, but can't you just create a Date
with JavaScript and send it with your request in a hidden field? You could
guess the timezone with this date and the server's one.

I don't know what you're going to do with this info, just be aware that if
the users clock is wrong intentionally or not, this will obviously not work
correctly. Although I think (just an assumption) that 99% of user's clock
are in fact, correct.

Another thing I'm thinking now is for users out on a travel, if they aren't
in their home, you will get a "wrong" date.

I'm with Maciek on this, TimeZones doesn't change a lot, it's not too
difficult to develop a simple "from/to" database based on the country and
state/province names. You may even start a Open Source project and get
collaborators to help maintain this database on an open format (okay, maybe
this is not going to happen, maybe).

Cheers,
Samuel.

On Sun, Oct 21, 2012 at 9:12 AM, Ashley Sheridan
wrote:

>
>
> Karl DeSaulniers  wrote:
>
> >
> >On Oct 21, 2012, at 5:01 AM, Maciek Sokolewicz 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
> >
> >
> >Yes, I had thought about asking the user his/her timezone, but being
> >that the product will be bought by some people who may have no idea, I
> >
> >figured I would try and see if I can set it up myself.
> >Maybe if the country has a province, i could ask the user then what
> >province and get my 1:2 that way. If it is a country I can get th

Re: [PHP] Re: User Timezone

2012-10-21 Thread Matijn Woudt
On Sun, Oct 21, 2012 at 12:01 PM, Maciek Sokolewicz
 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



RES: [PHP] Re: User Timezone

2012-10-21 Thread Samuel Lopes Grigolato
Coincidentally, TODAY I had to adjust my clock one hour forward because of DST 
(poor sleep =[). No so easy-to-solve problem, after all...

-Mensagem original-
De: Matijn Woudt [mailto:tijn...@gmail.com] 
Enviada em: domingo, 21 de outubro de 2012 10:30
Para: Maciek Sokolewicz
Cc: Karl DeSaulniers; php-general
Assunto: Re: [PHP] Re: User Timezone

On Sun, Oct 21, 2012 at 12:01 PM, Maciek Sokolewicz 
 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



--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread tamouse mailing lists
On Sun, Oct 21, 2012 at 6:12 AM, Ashley Sheridan
 wrote:
> Don't most browsers include this information in the HTTP headers?

Not that i have seen. Quick test using nc:

Firefox:

tamara@caesar:~$ nc -l 3000
GET / HTTP/1.1
Host: localhost:3000
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0)
Gecko/20100101 Firefox/15.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Cookie: author=tamouse

^C
tamara@caesar:~$

Chromium:

tamara@caesar:~$ nc -l 3000
GET / HTTP/1.1
Host: localhost:3000
Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.19 (KHTML,
like Gecko) Ubuntu/11.04 Chromium/18.0.1025.151 Chrome/18.0.1025.151
Safari/535.19
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

^C
tamara@caesar:~$

curl:

tamara@caesar:~$ nc -l 3000
GET / HTTP/1.1
User-Agent: curl/7.21.3 (i686-pc-linux-gnu) libcurl/7.21.3
OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
Host: localhost:3000
Accept: */*

^C
tamara@caesar:~$

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread tamouse mailing lists
On Sun, Oct 21, 2012 at 7:30 AM, Matijn Woudt  wrote:
> On Sun, Oct 21, 2012 at 12:01 PM, Maciek Sokolewicz
>  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



Re: [PHP] Re: User Timezone

2012-10-21 Thread Matijn Woudt
On Sun, Oct 21, 2012 at 1:12 PM, Ashley Sheridan
 wrote:
> Don't most browsers include this information in the HTTP headers?

Nope, you're probably confused with servers that return their time and date.

- Matijn

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: User Timezone

2012-10-21 Thread Karl DeSaulniers


On Oct 21, 2012, at 5:11 PM, tamouse mailing lists wrote:

On Sun, Oct 21, 2012 at 7:30 AM, Matijn Woudt   
wrote:

On Sun, Oct 21, 2012 at 12:01 PM, Maciek Sokolewicz
 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.



I am not familiar with this. Can you elaborate?

Best,

Karl DeSaulniers
Design Drumm
http://designdrumm.com


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP] Free LAPP stack

2012-10-21 Thread Robert Stone
Hello,

There are several sites offering free LAMP stacks but does anybody know of a 
site that has free LAPP stacks available?

Please don't flame me for preferring PostgreSql.

It's to set-up a thin client application. Disk space required approx. 1.5Mb. I 
need it to facilitate testing. Any suggestions welcome.

TIA,

Robert


Re: [PHP] Re: User Timezone

2012-10-21 Thread tamouse mailing lists
On Sun, Oct 21, 2012 at 6:18 PM, Karl DeSaulniers  wrote:
> On Oct 21, 2012, at 5:11 PM, tamouse mailing lists wrote:
>> 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.
>
> I am not familiar with this. Can you elaborate?

/usr/share/zoneinfo contains the time zone information in files and
subdirectories such as:

GMT
PST8PDT
America/Chicago
America/Los_Angeles
Europe/London
Europe/Rome

and so on, for all the various time zones.

You can use these names as strings in most time zone functions that
accept a time zone.

PHP knows about these; you'll find more info at
http://us1.php.net/manual/en/timezones.php

This doesn't help with the original question, finding out which time
zone a user is in, but once you find out, using the canonical names
will be useful without directly having to know if/when a particular
zone is in DST or not. You should never (ever!) have to deal with the
contents of these files; they contain binary data that is used in the
system to deal with figuring out that sort of thing.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Free LAPP stack

2012-10-21 Thread tamouse mailing lists
On Sun, Oct 21, 2012 at 8:15 PM, Robert Stone  wrote:
> There are several sites offering free LAMP stacks but does anybody know of a 
> site that has free LAPP stacks available?

If you already have a LAMP stack, adding Postgresql is really only a
matter of installing it.

If you're starting from scratch (bare metal kind of thing), you can
get a pretty minimal footprint LAPP stack from Turnkey Linux:
http://www.turnkeylinux.org/lapp

Similarly, BitNami has a LAPP stack: http://bitnami.org/stack/lappstack

> Please don't flame me for preferring PostgreSql.

There are several people of good repute that will castigate one for
using MySQL, so no flames here.

> It's to set-up a thin client application. Disk space required approx. 1.5Mb. 
> I need it to facilitate testing. Any suggestions welcome.

Is that how much space is available on the client total? Or how much
is needed for the data base? or? If you are looking to embed a small,
low-volume web server+database+php, you could look at using
lighttpd+fastcgi+php+sqlite3.

... and let the flames commence!

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php