CorneredRatSoftware Posted August 30, 2022 Posted August 30, 2022 (edited) We are self-hosted and in the process of updating our test installation from version 4.6.12.1 to 4.7.1 When updating the underlying systems we have started to encounter an error. Prior to updating the forum software we updated the server to: Debian 10 Buster, installed PHP 8.2. There was a MySQL update in there also. It's now running 10.3.34-MariaDB-0+deb10u1 Debian 10 Since this backend update when attempting to access the forums, we are encountering an error 500 on the UI, the only capturable error log is: PHP Fatal error: Declaration of IPS\\Login_Playnet::usernameIsInUse($username) must be compatible with IPS\\Login_Handler::usernameIsInUse($username, ?IPSMember $exclude = null) in var/www/forums/system/Login/Playnet.php on line 320 This error shows up when attempting to either a) login, or b) change theme from default. As a result, the /admin area is not accessible to look into other possible causes or remediate. Edited August 30, 2022 by CorneredRatSoftware
DawPi Posted August 30, 2022 Posted August 30, 2022 21 minutes ago, CorneredRatSoftware said: IPS\\Login_Playnet That is a 3rd party app I think and you need to update it to being compatible with 4.7.x.
Jim M Posted August 30, 2022 Posted August 30, 2022 As mentioned by @DawPi, this is third party related so you will want to work with the author for assistance. It could be that it also is not compatible with PHP 8. You can use recovery mode to disable all third party applications/plugins as you do not have access to the ACP:
teraßyte Posted August 30, 2022 Posted August 30, 2022 3 hours ago, CorneredRatSoftware said: installed PHP 8.2 IPS has barely started supporting PHP 8.1 with the 4.7 version and there are still some minor issues here and there. I suggests testing the upgrade using PHP 8.0 to be safe.
Marc Posted August 30, 2022 Posted August 30, 2022 It can take time to support newer versions of PHP as they are released. In this case however, 8.2 is still in beta, so we would not have begun looking at this as of yet.
CorneredRatSoftware Posted September 3, 2022 Author Posted September 3, 2022 Thanks for all of the responses. Will rollback the php update and see what happens. What kind of value gets passed in IPS\\Login_Handler::usernameIsInUse($username, ?IPS:qMember $exclude = null) In this came the '3rd party app' is a php function that returns True/False/Null.
Marc Posted September 5, 2022 Posted September 5, 2022 Im not sure I understand the question you are asking there. If this is a 3rd party application you would need to speak to the author of that third party application.
teraßyte Posted September 5, 2022 Posted September 5, 2022 (edited) On 9/3/2022 at 2:04 PM, CorneredRatSoftware said: Thanks for all of the responses. Will rollback the php update and see what happens. What kind of value gets passed in IPS\\Login_Handler::usernameIsInUse($username, ?IPS:qMember $exclude = null) In this came the '3rd party app' is a php function that returns True/False/Null. It doesn't really matter what values are passed or returned. The current problem is that the parameters don't match the ones of the function the login is extending. As Marc said, you need to speak with the developer who wrote the code. In case the original developer is no longer available you can find a new one from this list: https://invisioncommunity.com/third-party/providers/ Edited September 5, 2022 by teraßyte
Recommended Posts