I’d been using an extremely old build of phplist but when my host said Should upgrade PHP from 5.5 to 7, it broke PHPList.
I manually downloaded and installed the latest version, copied my old config file across etc, and can now access the interface, so I know it’s worked.
However at the top of the homepage it says;
error: Your database is out of date, please make sure to upgrade
Your version : 2.10.19
phplist version : 3.4.8
with an option below that to upgrade. When I click that I’m told;
Your database version: 2.10.19
fatalerror: Your version is older than 3.2.0 and cannot be upgraded to this version. Please upgrade to 3.2.0 first and then try again.
If I ignore than and try and start a new campaign it tells me;
fatalerror: Unable to create campaign, did you forget to upgrade the database?
My question is this. I’ve updated PHP on my host. I’ve updated to the most recent PHPList build. What exactly is it asking me to update and how do I do so? I thought by upgrading PHP version on my host it would have taken care of out of date database tables?
You were using a VERY old version of phpList, ie: 2.x.x you cannot simply update directly to the current version.
You’ll need to find phpList 3.2.0 and update from 2.x.x to this, then you should be able to update from 3.2.0 to 3.4.8
DO make sure to back up your database before you start updating so as not to lose your data.
There changes in the config file over time.
It might be best to migrate your settings from the very old config file into the config file in the new install. In particular, there’s a setting that should be changed to look like this:
// select the database module to use
// anyone wanting to submit other database modules is
// very welcome!
$database_module = ‘mysqli.inc’;
(from mysql.inc to mysqli.inc)
There are also a couple of database conversions that need to occur along the way, so it’s good to do the multi-step upgrade… the way the links and clicks and bounces were handled has changed since version 2. The database upgrades are ‘cumulative’, so from 2.x to 3.x there were some changes, and from 3.x to 3.y there were more changes. As I recall, the database upgrade scripts do not go from 2.x to 3.y (in my example)
That’s what I was counting on, but as I said after I installed 3.2.0 and went to domain.com/lists/admin to log in it gave me a blank page. When I went to the page source it hadn’t pulled any content or code at all.
Is there something else I’m supposed to do with the config.php file when I replace it with my old/existing one (apart from that $database_module = “mysqli.inc”; thing)?