Jump to content

Some problems when upgrading since IPB 3.4 to IPB 4.7


Recommended Posts

Hello, I want to upgrade my forum from IPB 3.4 to IPB 4.7. I have some problems with upgrading. I have error:

Unknown column 'field_' in 'field list'
/var/www/animeforum/applications/core/setup/upg_40000/upgrade.php::724

INSERT INTO `an_core_pfields_content` ( `member_id`, `field_` ) VALUES ( ?, ? ) ON DUPLICATE KEY UPDATE `member_id`=VALUES(`member_id`), `field_`=VALUES(`field_`)

Could contain: File, Webpage, Page, Text

 

I don't have this column:

 

Could contain: Page, Text, Number, Symbol, File

 

What should I do?

Link to comment
Share on other sites

\IPS\Db::i()->insert( 'core_pfields_content', array( 'member_id' => $row['member_id'], 'field_' . $_SESSION['aboutMe_Field'] => $aboutMe ), TRUE );

This string causes the issue. 

Link to comment
Share on other sites

Upgrades from 3.4 aren't directly supported anymore by IPS (unless I remember wrongly).

 

That said, I did plenty of upgrades from 3.4 in the past, but I never encountered this specific error.

Which PHP version are you using?

Link to comment
Share on other sites

5 hours ago, teraßyte said:

Upgrades from 3.4 aren't directly supported anymore by IPS (unless I remember wrongly).

This is indeed correct. I would suggest having a look through the provider directory to see if there is someone you can perhaps employ to assist with this if you are having issues. 

https://invisioncommunity.com/third-party/providers-directory/

Link to comment
Share on other sites

5 hours ago, teraßyte said:

Which PHP version are you using?

PHP 8.2

5 hours ago, teraßyte said:

Upgrades from 3.4 aren't directly supported anymore by IPS (unless I remember wrongly).

Are you sure that my structure of table correct? Maybe it has missing of About Me field?

Link to comment
Share on other sites

I've switched PHP 8.2 to PHP 8.1. Same error. I suppose that I Have missed fields. My fields starting since 4. Maybe I Must create some fields in the table?

Could contain: Page, Text

Link to comment
Share on other sites

I think I have found the problem:

Could contain: Page, Text

Field "About Me" didn't create in the table core_pfields_data

Any suggest why?

59 minutes ago, Marc Stridgen said:

. I would advise if you are unsure, you employ someone who can assist you with the upgrade there really

You think this problem cannot be solve by myself?

Link to comment
Share on other sites

10 minutes ago, Seirei said:

Tell me optimal configuration my server fo upgrading. PHP 8.1. Ок. What else? OS, web-service, database?

We would only provide recommendations for PHP 8.1, MySQL 8 and only provide support for Apache. We would not provide any further recommendations to OS, etc..

Link to comment
Share on other sites

These are just some thoughts I've dug up from the back of my mind from a while ago. This isn't official support but you may find something here useful.

  • It looks like you're continuing the upgrade when you're retrying it, this won't really work with the early 4.0.0 steps due to the amount of processing they have to do. Any failures here and really you want to start again from scratch.
  • I would suggest using the earliest supported version of PHP which is currently 8.0. these upgrade steps were written a decade ago.
  • Looking at the code, I would suggest checking the upgrade log this is either in the database in core_log of on the file system in uploads/logs.
Link to comment
Share on other sites

Posted (edited)

Thanks for hints. I found out the problem. Table pfields_data didn't have correct structure. Colums pf_title and pf_desc must have default values. In my case they haven't. I changed default value to NULL and this error didn't pop up.

I will continue upgrading process evening.

Edited by Seirei
Link to comment
Share on other sites

I finished my upgrading. Now I fix some bugs. I have issue with sending e-mail:

Creation of dynamic property IPS\Email\Outgoing\Php::$language is deprecated

Could contain: Page, Text, File

Link to comment
Share on other sites

Just now, Seirei said:

I finished my upgrading. Now I fix some bugs. I have issue with sending e-mail:

Creation of dynamic property IPS\Email\Outgoing\Php::$language is deprecated

Could contain: Page, Text, File

Check that you have all files up to date. You disabled any third-party applications/plugins. You are on PHP 8.0 or 8.1.

Link to comment
Share on other sites

4 hours ago, Stuart Silvester said:

The minimum PHP version in 4.7 is 8.0, PHP 8.1 is recommended.

PHP 8.1 has strftime() function as deprecated. So IPB 4 doesn't send e-mail. New users cannot sign up, old users cannot recover passwords. Thant's bad. What I should do?

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...