You are correct.
RSS/server/update.php is storing the date and time in the database as GMT.
This means that a new article added to the database will show the time as 23:00 even though it is 15:00 at DreamHost when querying the database.
The 'zone' variable comes into play when the script obtains the date and time of the last article. The script asks for the timestamp as UNIX epoch (which is UTC which is close to GMT). But wait, the mysql engine thinks the value was originally local time, not GMT, so the conversion is off. The script tries to compensate by adding or subtracting to the UNIX epoch value returned.
From what I can tell the script should work correctly - it's just that browsing the database will look funny because the strings are GMT regardless of how you set 'zone' or what mysql thinks the timezone is. And setting the machine to GMT wouldn't make a difference because the GMT strings are converted from UNIX epoch which is already GMT.
mysql reads the TZ environment variable when it starts mysqld, so setting it in a script or shell won't help.
[color=#6600CC]Atropos[/color] | openvein.org