Local time vs Mysql time causing publishDate issue

11 posts by 6 authors in: Forums > CMS Builder
Last Post: January 18, 2021   (RSS)

By zip222 - December 9, 2020

I recently updated a site to v 3.54 and I am experiencing a problem with publishDates which seems to stem the timezone setting in General Settings. I have the timezone set to my local timezone, which then displays local time and mysql time to be 2 hours apart (see attachment). This leads to items using the publishDate field to not appear on the site until 2 hours after intended. 

Attachments:

timezone-settings.png 26K

By KennyH - December 10, 2020

To add onto this, I think a similar issue is causing problems in the Developer Log (3.54). It is saying errors are happening "In the future" instead of "XX seconds ago" or something similar.

By zip222 - December 17, 2020

Any thoughts on this?

By hans - December 21, 2020 - edited: December 21, 2020

Hello, I'll be looking over this issue.

Feel free to look over at lib/database_functions.php and find the setMySqlTimezone($timeZone) at around line 213, and you can manually set the timezone from there.

The format in coding is +00:00 where +00 equals the number of timezones to the left/right of the GMT. Based on your original post, you would have it as -05:00.

Hans Marcon
PHP Programmer (In Training)
interactivetools.com

By mark99 - January 7, 2021

I'm seeing the same issue. Luckily nothing we post is strictly time dependent, but obviously it's not ideal if the system can't adjust correctly to a set time or daylight saving times. Changing the server time is not something we have control over, so it needs to be fixable via CMSB.

By hans - January 7, 2021

Just to clarify, this is only a CMSB 3.5.4 issue, and not a 3.5.0 issue and below.

Hans Marcon
PHP Programmer (In Training)
interactivetools.com

By zip222 - January 7, 2021

Confirming that my installation, which is having this issues, is 3.54

By mark99 - January 8, 2021

Same.

By Dave - January 18, 2021

Hi All, 

We've fixed this bug for the next release.  Here's some instructions if you want to manually patch your current version:

  • Backup /lib/database_functions.php
  • Edit /lib/database_functions.php and search for mysqli($mysqli) 
  • Add the code in red: 

mysqli($mysqli); // save object on successful connection

// set connected flag
mysql_isConnected(true);

Let me know if that doesn't resolve the issue for you or if you need anything else.

Thanks!

Dave Edis - Senior Developer
interactivetools.com