MyBB Community Forums

Full Version: Upgrade from 1.8.6 to 1.8.22
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I needed to upgrade to 1.8.22 so I could upgrade to php 7.3 to run another website on my server.

When I first tried to upgrade I accidentally wiped out my forum because I didn't realize I was doing a clean install instead of the upgrade. The drop down menu and the button to do an upgrade never appeared until I copied my previous config file into the inc directory.

Now, I can get the dropdown menu and do the upgrade. It seems like I had to hit the Next button several times to get the upgrade to continue in the same spot. But it did finally upgrade. 

But when I go to run the forum, I immediately get the Can't launch SQL error. Or the 500 error.

I reverted to 1.8.6 and started the process again. Again copying in my config file. Again hitting the next button several times in what seemed the same spot.

This time I received this error "Parse error: syntax error, unexpected '}', expecting end of file in /hermes/bosnaweb20a/b1470/ipw.brotherh/public_html/doomForum/index.php on line 398"

I don't know if you need this, but the forum is at brotherhoodofdoom.com/doomForum and I run it on the iPower servers.

What should I do to fix this problem?
The error is kind of clear, it says a file has an unexpected _thing_ is its content. You could share the line content (and its surroundings) so maybe we can guess what is wrong.

If I have to guess, when you received the "Can't launch SQL error. Or the 500 error" error the script hasn't loaded all files (otherwise you would have received the parse error before getting the "Can't launch SQL error. Or the 500 error" error) and now that that error is "fixed" the script is trying to load a file that has a parse error.

Since line 398 of the official package index.php file doesn't try to load files we can only guess what the problem is.
https://github.com/mybb/mybb/blob/featur...x.php#L398

Please be kind and provide more information.
Hi Omar. Line 398 is at the end of the EVAL function with just the one bracket. In the "PHP" block it is line 15.

$forum_list = build_forumbits();
$forums = $forum_list['forum_list'];

$plugins->run_hooks('index_end');

eval('$index = "'.$templates->get('index').'";');
output_page($index);
	$query = $db->query("
		SELECT f.*, fr.dateline AS lastread
		FROM ".TABLE_PREFIX."forums f
		LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid = f.fid AND fr.uid = '{$mybb->user['uid']}')
		WHERE f.active != 0
		ORDER BY pid, disporder
	");
}

while($forum = $db->fetch_array($query))
{
	if($mybb->user['uid'] == 0)
	{
		if(!empty($forumsread[$forum['fid']]))
		{
			$forum['lastread'] = $forumsread[$forum['fid']];
		}
	}
	$fcache[$forum['pid']][$forum['disporder']][$forum['fid']] = $forum;
}
$forumpermissions = forum_permissions();

// Get the forum moderators if the setting is enabled.
$moderatorcache = array();
if($mybb->settings['modlist'] != 0 && $mybb->settings['modlist'] != 'off')
{
	$moderatorcache = $cache->read('moderators');
}

$excols = 'index';
$permissioncache['-1'] = '1';
$bgcolor = 'trow1';

// Decide if we're showing first-level subforums on the index page.
$showdepth = 2;
if($mybb->settings['subforumsindex'] != 0)
{
	$showdepth = 3;
}


I will also attach the entire file.
Well, that make it easy, the } in line 15 (398) isn't suppose to be there, just delete it.

This also means this is not the default index.php file, so you somehow updated the files after upgrading or you updated without using the whole official package.
It couldn't be that easy.

I'm now getting the myBB error(44)
Did you search that? Don't take this as mean, but by your posts it would seem you do little to null research or just expect us to guess.

From a google search I found the following post:
https://community.mybb.com/thread-107769...#pid784848
I tried that early on, in both configurations with and without the i. It didn't work.

I've tried many things. I've rebooted the whole system. I've reinstalled it. I've been on with my server company for hours. I've redone the config file to make sure it conforms to the proper configs. I'm looking for things I haven't tried and hoping to find them here.
mysqli is used for recent versions of php & its module should be available & configured by server support.
Check if the mysqli module is active for your PHP version as .m. mentions. YOu said you were updating more than MyBB, did you update your PHP version and if so, to which version? If you changed your server configuration recently it would be helpful to know what you changed.
thank you, gentleman for your help. There is a mysqli module on my servers for use with the newer version of php.

I tried your solutions to no avail but here is what I did to eventually get the system to work, which I did finally achieve earlier this morning. It wasn't pretty but it worked.

I made a completely fresh install of the latest version of myBB with a completely new database. I duplicated my old forum database into a new forum database. I downloaded the Merge software and ran that.

I did that two times with two different downloads of the software. Both times i got warnings that the IN_MODULE was throwing off an error. I tried to just continue but it eventually failed in the configuration aspect of the Merge Wizard.

So, I had the unpopulated board. I rewrote the config.php file to point at the copy of the database of the old forum.

That worked. My myBB forum is now up and working on PHP 7.3