Plugin Author
Franky
(@liedekef)
Does your configured wordpress database user has the right to create tables? Because if not, that will be the problem.
Hi Franky,
Users has the right to create tables but in the database only two tables are created: wp_eme_groups and wp_eme_usergroups.
Plugin Author
Franky
(@liedekef)
If that is the case: can you check the webserver logfiles? It should indicate some errors concerning table creation then. Also: what DB version are you using (might be important) and what php version?
I’m using php version 5.6 and my DB version is 5.5.52.
I checked the error log and found errors concerning EME, but I´m only a noob and don´t really know what I´m looking for. The error that stands out to me shows this:
[Thu Apr 12 12:09:06.839676 2018] [fcgid:warn] [pid 6288:tid 139755685672704] [client 87.215.25.234:51638] mod_fcgid: stderr: WordPress databasefout Invalid default value for ‘creation_date’ bij query CREATE TABLE wp_eme_events (, referer: http://mysite.nl/wp-admin/plugin-install.php?s=events+made+easy&tab=search&type=term
I think this explains why the table wp_eme_events was never created and this is a returning error for the rest of the missing tables.
Plugin Author
Franky
(@liedekef)
Indeed that is the problem. It seems your DB version is too old for a newer feature that I put in.
Although wordpress recommends 5.6, I admit this is a problem, and I’ll take a look at how to fix this.
But to be blunt: is there no way to upgrade to a newer mysql version? Both php 5.6 and mysql 5.5 are pretty old. PHP 5.6 will be end of life at the end of this year, see http://php.net/supported-versions.php
I just got off the phone with my hosting service. They weren’t very helpful. It appears I should be able to upgrade my PHP version from within cpanel from 5.6.3 to 7.0 but not MySql which is currently 5.5.58-cll. I followed the step to change the PHP version but I still get the errors. I can’t tell if it actually changed anything. When I look at Server Information, it still still reports I’m using PHP 5.6.3.
Plugin Author
Franky
(@liedekef)
Well, it is not a php problem, but mysql-related. The reason is I default datetime columns to “CURRENT_TIMESTAMP” (or “NOW”), and in older mysql versions that was not possible … I had hoped people would’ve switched by now, and certainly hosting providers should be amongst the first (I support sites on 3 providers, all have mariadb in place).
The only thing I can do is check for the mysql version and not initialize to ‘NOW’ …
Another possibility (if you really need to go forward now), is to edit events-manager.php yourself and remove all the text saying “DEFAULT CURRENT_TIMESTAMP” and “DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP” (not the lines, just those words)
It won’t affect your setup, just not track creation and update timings for events and such … but of course it will not handle updates, so I’d need to do something to account for older versions (and I’ll handle it in the next version).
I just tried removing that text and it caused problems when logging in to my dashboard. Just a blank screen. I performed a find and replace to replace the exact text with no value. Is there another way I should do it?
Plugin Author
Franky
(@liedekef)
You probably made a typo.
However, I prepared a dev-version that should fix your issue, you can download it here:
https://wordpress.org/plugins/events-made-easy/advanced/
Deactivate and remove the current EME (make sure no EME database tables are left) and then:
replace the events-made-easy folder/files in your plugin dir with the one you download from the link above
After that you should be able to reactivate it and it should be ok.