Phorum / Core

The core of Phorum
http://www.phorum.org
68 stars 34 forks source link

Drowning in PHP errors: mods/spamhurdles #1040

Open mpotts95420 opened 3 years ago

mpotts95420 commented 3 years ago

My moderately used Phorum installation is gathering several hundred PHP errors an hour, and jeopardizing my website. The errors look like this:

[23-Dec-2020 17:42:12 UTC] PHP Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/goapples/public_html/phorum/mods/spamhurdles/api.php on line 775 [23-Dec-2020 17:42:12 UTC] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Crypt_AES has a deprecated constructor in /home/goapples/public_html/phorum/mods/spamhurdles/include/crypt/aes.php on line 110 [23-Dec-2020 17:42:12 UTC] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Crypt_Rijndael has a deprecated constructor in /home/goapples/public_html/phorum/mods/spamhurdles/include/crypt/rijndael.php on line 112 [22-Dec-2020 23:51:00 UTC] PHP Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/goapples/public_html/phorum/mods/spamhurdles/api.php on line 694 [22-Dec-2020 23:51:00 UTC] PHP Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/goapples/public_html/phorum/mods/spamhurdles/api.php on line 756

I just upgraded to 5_2_23 hoping the errors would abate, but they've intensified. I hope there's a way to turn these errors off (if they can't be fixed) ...but I have tried by adding error_reporting( 0 ) ; to the first line of index.php, and (experimentally) replacing curly brackets on line 771 of spamhurdles/api.php with parens -- this just appeared to "whack a mole" to line 775? I am way out of my depth here -- I'm an experienced PHP programmer but my "big" systems are only a few hundred lines long -- with an avid audience whose experience I don't want to muddle. I did "browse" looking for solutions, but came up empty. HELP!

glensc commented 3 years ago

your errors are because you using too new PHP. you can downgrade. deprecation messages can be turned of with the error_reporting php.ini setting.

you could also use automatic code fix tools to upgrade code:

mpotts95420 commented 3 years ago

At 02:22 PM 12/23/2020, you wrote:

your errors are because you using too new PHP. you can downgrade. deprecation messages can be turned of with the error_reporting php.ini setting.

Not really. Because of the way my host system works, I can only turn off ALL error messages for every script.

you could also use automatic code fix tools to upgrade code:

If I can do that, why haven't you Phorum folks made a "fixed" version available?

Our users love and rely on the Phorum, and I hate showing it to them with a whole raft of "deprecated"s on top; it makes us all look laggardly. Do you have any idea when a PHP7-ready version will be available? Should we be beta testing? I note that the PHP gurus are already on to PHP8...

glensc commented 3 years ago

you could also use automatic code fix tools to upgrade code:

If I can do that, why haven't you Phorum folks made a "fixed" version available?

If you haven't noticed then the last merge was in 2016: -https://github.com/Phorum/Core/commit/8ce5dcad812fc66511423d89e8fb9c92e9cb79bc

that's an indication that there are no phorum devs active.

sookoll commented 2 years ago

Take a look at https://github.com/Phorum/Core/pull/1043 It is not entirely fixed to work with php8, a bunch of warnings pop up, but they are easy to fix. $PHORUM needs default values on api.php and one fix PhorumDB.php file to get it working without warnings.