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.
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 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.
PHP Programmer (In Training)
interactivetools.com
By hans - December 21, 2020 - edited: December 21, 2020
Upon further research, it turns out that the above solution does not actually change the current timezone, if your MySQL is using the "SYSTEM" timezone. Unfortunately, this is very likely the case.
The next step in changing this would be to change it via your server's time, but this option varies based on your host's control panel. What control panel do you use for your hosting?
If it is cPanel, you can find instructions on how to change your server time here (https://docs.cpanel.net/whm/server-configuration/server-time/).
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.
PHP Programmer (In Training)
interactivetools.com
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!
interactivetools.com