Thanks for good answers. Okay, so I should set the default time zone to central GMT time, and then save GMT offset for every user. This sounds realistic, because I don't think that I need to correct the time for users that doesn't login.
So, if I now have the GMT offset for every user, how do I display the right date? Can someone please show some phpcode? I would be very grateful if someone could do that. >>>Satyam wrote: >>> Store all of your dates as GMT. Perform all date based calculations >>> around GMT also, and then offset the values for localised display only. >>> >>> This way you only need to store the GMT offsets for each user, i.e. >>> GMT+1 or GMT-8 when it comes to displaying the dates to them. The >>> trick is to use a constant base date for all data, and only being the >>> user timezones into play when needed. >>> >> Actually, I find that it is better not to bother storing anything for >> the user at all. At the first chance, get some JavaScript to read the >> local time of the client machine and send it back to the server, either >> with the login data, using some AJAX or along with any link the user >> might click on the welcome screen, for example, the language choice. >> Then use the offset from his local time to the server time for every >> time information, substract it from any time information you read from >> them, add it to anything you send them. This works whether the user is >> registered or not, whether he/she travels or remains in the same time >> zone and spares you the trouble of keeping your IP to country to >> timezone table updated. It assumes that the user updates the time zone >> on his/her machine and if he doesn't it means she doesn't care, so why >> should you. (some travellers prefer to keep their portable machines set >> to their home-base time zone) >Of cause the major fault with this is that it can only display the CURRENT >time offset. You *ALSO* need the users Daylight Saving Zone as well. This >has >been giving us great fun since the winter dates and times need a different >offset to the summer ones. Something that simplistic browser time offset >does >not supply. :( >The only way to get this working properly at present is to get the user to >set >their time/daylight settings in their profile, and then you can provide the >correct offset for all days on a calendar. Remember that for users WITH a >daylight saving offset, one day each year has 23 hours and one 25 hours ;) -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php